Changeset 222


Ignore:
Timestamp:
02/21/06 23:52:15 (7 years ago)
Author:
anarcat
Message:

[project @ alternc: changeset 2004-05-19 14:23:06 by benjamin]
Inclusion du patch de securite 01/05/2004.

Original author: benjamin
Date: 2004-05-19 14:23:06

Location:
bureau
Files:
6 added
46 edited

Legend:

Unmodified
Added
Removed
  • bureau/admin/adm_doadd.php

    r1 r222  
    11<?php 
    22/* 
    3  $Id: adm_doadd.php,v 1.1.1.1 2003/03/26 17:41:29 root Exp $ 
     3 $Id: adm_doadd.php,v 1.2 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    4242 
    4343  // Add here all what you want when an account is created ! 
    44 $ff=new m_ftp($u); 
    45 $ff->add_ftp($login,"",$pass,"/"); 
    46  
     44  $mem->su($u); 
     45  $ftp->add_ftp($login,"",$pass,"/"); 
     46  $mem->unsu(); 
     47  
    4748 $error=_("The new member has been successfully created"); 
    4849 
  • bureau/admin/adm_dodel.php

    r1 r222  
    11<?php 
    22/* 
    3  $Id: adm_dodel.php,v 1.1.1.1 2003/03/26 17:41:29 root Exp $ 
     3 $Id: adm_dodel.php,v 1.2 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3535} 
    3636 
     37 
    3738if (!is_array($d)) { 
    3839  $d[]=$d; 
     
    4142reset($d); 
    4243while (list($key,$val)=each($d)) { 
     44  if (!$admin->checkcreator($val)) { 
     45    __("This page is restricted to authorized staff"); 
     46    exit(); 
     47  } 
    4348  if (!($u=$admin->get($val)) || !$admin->del_mem($val)) { 
    4449    $error.=sprintf(_("Member '%s' does not exist"),$val)."<br />"; 
  • bureau/admin/adm_doedit.php

    r164 r222  
    11<?php 
    22/* 
    3  $Id: adm_doedit.php,v 1.2 2003/10/22 08:18:53 benjamin Exp $ 
     3 $Id: adm_doedit.php,v 1.3 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3030require_once("../class/config.php"); 
    3131 
    32 if ($back) { 
    33   include("adm_list.php"); 
    34   exit; 
     32if (!$admin->enabled) { 
     33  __("This page is restricted to authorized staff"); 
     34  exit(); 
    3535} 
    36 if (!$admin->enabled) { 
     36if (!$admin->checkcreator($uid)) { 
    3737  __("This page is restricted to authorized staff"); 
    3838  exit(); 
  • bureau/admin/adm_edit.php

    r164 r222  
    11<?php 
    22/* 
    3  $Id: adm_edit.php,v 1.7 2003/10/22 08:18:53 benjamin Exp $ 
     3 $Id: adm_edit.php,v 1.8 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3434        exit(); 
    3535} 
     36if (!$admin->checkcreator($uid)) { 
     37        __("This page is restricted to authorized staff"); 
     38        exit(); 
     39} 
    3640 
    3741if (!$r=$admin->get($uid)) { 
     
    6165        <?php 
    6266          echo "<option"; 
    63           if (!$r["enabled"]) echo " selected=\"selected\""; 
     67          if ($r["enabled"]=="0") echo " selected=\"selected\""; 
    6468          echo " value=\"0\">"._("No")."</option>"; 
    6569          echo "<option"; 
    66           if ($r["enabled"]) echo " selected=\"selected\""; 
     70          if ($r["enabled"]=="1") echo " selected=\"selected\""; 
    6771          echo " value=\"1\">"._("Yes")."</option>"; 
    6872?></select></td> 
     
    7175<tr> 
    7276        <th><label for="pass"><?php __("Password"); ?></label></th> 
    73         <td><input type="text" class="int" id="pass" name="pass" value="<?php echo $r["pass"]; ?>" size="20" maxlength="64" /></td> 
     77        <td><input type="text" class="int" id="pass" name="pass" value="" size="20" maxlength="64" /></td> 
    7478</tr> 
    7579<tr> 
     
    9498</tr> 
    9599<tr> 
    96         <td colspan="2" align="center"><input type="submit" class="inb" name="submit" value="<?php __("Edit this account"); ?>" /> &nbsp; <input type="submit" class="inb" name="back" value="<?php __("Back to the member list"); ?>" /> 
     100        <td colspan="2" align="center"><input type="submit" class="inb" name="submit" value="<?php __("Edit this account"); ?>" /> 
    97101</td> 
    98102</tr> 
     
    101105 
    102106<p> 
    103 <?php  
     107<?php 
     108        if ($mem->user[uid]==2000) { // PATCHBEN only root can change su/nosu :)   
    104109if ($r["su"]) { 
    105110?> 
     
    118123 
    119124<p><?php  
     125        } 
    120126$c=$admin->get($r["creator"]); 
    121127printf(_("Account created by %s"),$c["login"]);  
  • bureau/admin/adm_list.php

    r108 r222  
    11<?php 
    22/* 
    3  $Id: adm_list.php,v 1.5 2003/06/10 12:14:09 root Exp $ 
     3 $Id: adm_list.php,v 1.6 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    5151<p> 
    5252<?php __("Here is the list of hosted members"); ?> 
     53&nbsp; 
     54<!-- TODO A supprimer en mode "on ne voit que ses comptes" + supprimer le fichier list2 --> 
     55<a href="adm_list2.php">Liste de tous les comptes</a> 
    5356</p> 
    5457<p> 
    5558<a href="adm_add.php"><?php __("Create a new member"); ?></a> 
    5659</p> 
     60<?php 
     61if (!is_array($r)) { 
     62  echo "<p class=\"error\">"._("No account defined for now")."</p>"; 
     63} else {  
     64?> 
     65 
    5766<form method="post" action="adm_dodel.php"> 
    5867<?php  
     
    97106if ($mem->user["admlist"]==1) { // Short mode TODO : make 3 columns instead of 2  + XHTML compliance instead of 1px img trick ;) 
    98107?> 
     108 
     109 
    99110<table cellspacing="0" cellpadding="0"> 
    100111<tr> 
     
    102113        <th width="1" bgcolor="black"><img src="icon/pix.gif" width="1" height="1" border="0" alt=""></th> 
    103114        <th colspan="2">&nbsp;</th><th><?php __("Username"); ?></th> 
     115        <th width="1" bgcolor="black"><img src="icon/pix.gif" width="1" height="1" border="0" alt=""></th> 
     116        <th colspan="2">&nbsp;</th><th><?php __("Username"); ?></th> 
    104117</tr> 
    105118<?php 
    106119reset($r); 
    107120$col=1; 
    108 for($z=0;$z<round(count($r)/2);$z++) 
     121for($z=0;$z<round(count($r)/3);$z++) 
    109122        { 
    110123        $col=3-$col; 
     
    131144<td width="1" bgcolor="black"></td> 
    132145<?php 
    133 $val=$r[$z+round(count($r)/2)]; 
    134 if (is_array($val)) { 
     146$val=$r[$z+round(count($r)/3)]; 
    135147?> 
    136148<?php if ($val["su"]) { ?> 
     
    151163                </td> 
    152164                <td <?php if ($val["su"]) echo "style=\"color: red\""; ?>><?php echo $val["login"] ?></td> 
     165<td width="1" bgcolor="black"></td> 
     166<?php 
     167$val=$r[$z+round(2*count($r)/3)+1]; 
     168if (is_array($val)) { 
     169?> 
     170<?php if ($val["su"]) { ?> 
     171                        <td>&nbsp;</td> 
     172<?php } else { ?> 
     173 <td align="center"><input type="checkbox" class="inc" name="d[]" value="<?php echo $val["uid"]; ?>"></td> 
     174<?php } ?> 
     175                <td align="center"> 
     176                <a href="adm_edit.php?uid=<?php echo $val["uid"] ?>"><?php __("E"); ?></a> 
     177                <a href="adm_quotaedit.php?uid=<?php echo $val["uid"] ?>"><?php __("Q"); ?></a> 
     178                <?php 
     179                if (!$val["enabled"]) 
     180                        echo "<img src=\"icon/encrypted.png\" width=\"16\" height=\"16\" alt=\""._("Locked Account")."\">"; 
     181                else { 
     182                ?> 
     183                        <a href="adm_login.php?id=<?php echo $val["uid"];?>" target="_parent"><?php __("C"); ?></a> 
     184                <?php } ?> 
     185                </td> 
     186                <td <?php if ($val["su"]) echo "style=\"color: red\""; ?>><?php echo $val["login"] ?></td> 
    153187        </tr> 
    154188<?php 
     
    162196</table> 
    163197</form> 
    164  
     198   <?php } ?> 
    165199</body> 
    166200</html> 
  • bureau/admin/adm_login.php

    r108 r222  
    11<?php 
    22/* 
    3  $Id: adm_login.php,v 1.2 2003/06/10 12:14:09 root Exp $ 
     3 $Id: adm_login.php,v 1.3 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3434        exit(); 
    3535} 
     36/* 
     37if (!$admin->checkcreator($uid)) { 
     38  __("This page is restricted to authorized staff"); 
     39  exit(); 
     40} 
     41*/ 
    3642 
    3743if (!$r=$admin->get($id)) { 
    3844        $error=$err->errstr(); 
    3945} else { 
    40         $username=$r["login"]; 
    41         $password=$r["pass"]; 
    42         include("login.php"); 
     46 
     47if (!$mem->setid($id)) { 
     48        $error=$err->errstr(); 
     49        include("index.php"); 
    4350        exit(); 
     51} 
     52 
     53?> 
     54<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 
     55<html> 
     56<head> 
     57<title><?php __("AlternC Desktop"); ?></title> 
     58<link rel="stylesheet" href="styles/style.css" type="text/css" /> 
     59<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
     60</head> 
     61<frameset cols="225px,*"> 
     62        <frame src="menu.php" name="left" /> 
     63        <frame src="main.php" name="right" /> 
     64<noframes> 
     65<body> 
     66<p> 
     67        Votre navigateur doit supporter les cadres.<br /> 
     68        Your browser must support frames 
     69</p> 
     70</body> 
     71</noframes> 
     72</frameset> 
     73</html> 
     74<?php 
     75                                          exit(); 
    4476} 
    4577include("head.php"); 
  • bureau/admin/adm_quotadoedit.php

    r1 r222  
    11<?php 
    22/* 
    3  $Id: adm_quotadoedit.php,v 1.1.1.1 2003/03/26 17:41:29 root Exp $ 
     3 $Id: adm_quotadoedit.php,v 1.2 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3636 
    3737if ($submit) { 
     38 
     39  $mem->su($uid); 
    3840  $qlist=$quota->qlist(); 
    3941  reset($qlist); 
     
    4143  while (list($key,$val)=each($qlist)) { 
    4244    $var="q_".$key; 
    43     $quota->setquota($key,$$var,0,$uid); 
     45    $quota->setquota($key,$$var,0); 
    4446  } 
     47  $mem->unsu(); 
    4548  $error=_("The quotas has been successfully edited"); 
    4649  include("adm_list.php"); 
     
    5053 
    5154if ($recalc) { 
    52   $quota->checkquota($uid); 
     55  $mem->su($uid); 
     56  $quota->checkquota(); 
     57  $mem->unsu(); 
    5358  include("adm_quotaedit.php"); 
    5459} 
  • bureau/admin/adm_quotaedit.php

    r108 r222  
    11<?php 
    22/* 
    3  $Id: adm_quotaedit.php,v 1.2 2003/06/10 12:14:09 root Exp $ 
     3 $Id: adm_quotaedit.php,v 1.3 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3939} 
    4040 
    41 if (!$r=$quota->getquota("",$uid)) { 
     41$mem->su($uid); 
     42if (!$r=$quota->getquota()) { 
    4243        $error=$err->errstr(); 
    4344} 
     45$mem->unsu(); 
    4446include("head.php"); 
    4547?> 
  • bureau/admin/bro_main.php

    r185 r222  
    11<?php 
    22/* 
    3  $Id: bro_main.php,v 1.9 2004/04/30 21:05:58 anonymous Exp $ 
     3 $Id: bro_main.php,v 1.10 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    173173echo "\">".$c[$i]["name"]."</a></td>\n"; 
    174174echo "  <td>".format_size($c[$i]["size"])."</td>"; 
    175 #echo "<td>".format_date('%3$d-%2$d-%1$d %4$d:%5$d',date("Y-m-d H:i:s",$c[$i]["date"]))."<br /></td>"; 
    176 echo "<td>".date("d/m/Y H:i",$c[$i]["date"])."<br /></td>"; 
    177  
     175echo "<td>".format_date('%3$d-%2$d-%1$d %4$d:%5$d',date("Y-m-d H:i:s",$c[$i]["date"]))."<br /></td>"; 
    178176if ($p["showtype"]) { 
    179177echo "<td>".$bro->mime($c[$i]["name"])."</td>"; 
     
    195193echo "\">".$c[$i]["name"]."/</a></b></td>\n"; 
    196194echo "  <td>".format_size($c[$i]["size"])."</td>"; 
    197 #echo "<td>".format_date('%3$d-%2$d-%1$d %4$d:%5$d',date("Y-m-d H:i:s",$c[$i]["date"]))."<br /></td>"; 
    198 echo "<td>".date("d/m/Y H:i",$c[$i]["date"])."<br /></td>"; 
    199  
     195echo "<td>".format_date('%3$d-%2$d-%1$d %4$d:%5$d',date("Y-m-d h:i:s",$c[$i]["date"]))."<br /></td>"; 
    200196if ($p["showtype"]) { 
    201197echo "<td>Dossier</td>"; 
  • bureau/admin/index.php

    r135 r222  
    11<?php 
    22/* 
    3  $Id: index.php,v 1.8 2003/08/13 23:52:24 root Exp $ 
     3 $Id: index.php,v 1.9 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    2828 ---------------------------------------------------------------------- 
    2929*/ 
    30 $nocheck="yes"; 
    31 require_once("../class/config.php"); 
     30 
     31require_once("../class/config_nochk.php"); 
    3232 
    3333if (!$mem->del_session()) { 
  • bureau/admin/main.php

    r101 r222  
    11<?php 
    22/* 
    3  $Id: main.php,v 1.2 2003/06/10 06:42:25 root Exp $ 
     3 $Id: main.php,v 1.3 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    4747$mem->resetlast(); 
    4848 
     49/* 
     50<h3> 
     51Le bureau AlternC de ce serveur est en travaux actuellement.<br /> 
     52Il se peut que certaines parties du bureau soient inaccessibles ponctuellement.<br /> 
     53Si une partie du bureau ne fonctionne pas pendant longtemps, n'hésitez pas, contactez le  
     54mainteneur par mail : <a href="mailto:root@heberge.info">root@heberge.info</a> 
     55</h3> 
     56*/ 
    4957?> 
    5058</body> 
  • bureau/admin/mem_cm.php

    r107 r222  
    11<?php 
    22/* 
    3  $Id: mem_cm.php,v 1.3 2003/06/10 11:18:27 root Exp $ 
     3 $Id: mem_cm.php,v 1.4 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    2828 ---------------------------------------------------------------------- 
    2929*/ 
    30 $nocheck="yes"; 
    31 require_once("../class/config.php"); 
     30 
     31require_once("../class/config_nochk.php"); 
    3232 
    3333include("head.php"); 
  • bureau/admin/mem_cm2.php

    r107 r222  
    11<?php 
    22/* 
    3  $Id: mem_cm2.php,v 1.3 2003/06/10 11:18:27 root Exp $ 
     3 $Id: mem_cm2.php,v 1.4 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    2828 ---------------------------------------------------------------------- 
    2929*/ 
    30 $nocheck="yes"; 
    31 require_once("../class/config.php"); 
     30 
     31require_once("../class/config_nochk.php"); 
    3232 
    3333if (!$mem->ChangeMail2($cookie,$cle,$cuid)) { 
  • bureau/admin/menu.php

    r135 r222  
    11<?php 
    22/* 
    3  $Id: menu.php,v 1.4 2003/08/13 23:52:24 root Exp $ 
     3 $Id: menu.php,v 1.5 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    5454 
    5555<p> <a href="http://alternc.org"><img src="alternc.png" width="109" height="62" border="0" alt="AlternC" /></a></p> 
     56 
    5657</body> 
    5758</html> 
  • bureau/admin/menu_adm.php

    r101 r222  
    11<?php 
    22/* 
    3  $Id: menu_adm.php,v 1.2 2003/06/10 06:42:25 root Exp $ 
     3 $Id: menu_adm.php,v 1.3 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3232/* ######### SUPER-ADMIN ########## */ 
    3333/* ############################# */ 
    34         if ($mem->checkRight()) 
    35    {    ?> 
    3634 
    37     
    38 <tr><td nowrap="nowrap"> 
    39 <a href="adm_list.php"><font color="red"><?php __("Manage the members"); ?></font></a><br /> 
    40 <a href="adm_panel.php"><font color="red"><?php __("Admin Control Panel"); ?></font></a><br /> 
    41 <a href="/admin/sql"><font color="red"><?php __("General SQL Admin"); ?></font></a><br /> 
     35if ($mem->checkRight()) 
     36{    ?> 
     37 
     38<tr><td nowrap> 
     39   <a href="adm_list.php"><font color="red"><?php __("Manage the members"); ?></font></a><br> 
     40   <a href="adm_panel.php"><font color="red"><?php __("Admin Control Panel"); ?></font></a><br> 
     41   <a href="/admin/sql"><font color="red"><?php __("General SQL Admin"); ?></font></a><br> 
    4242 
    4343</td></tr> 
    4444<?php 
    45    } 
     45            } 
    4646?> 
  • bureau/admin/menu_aide.php

    r101 r222  
    11<?php 
    22/* 
    3  $Id: menu_aide.php,v 1.2 2003/06/10 06:42:25 root Exp $ 
     3 $Id: menu_aide.php,v 1.3 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3131 
    3232<tr><td nowrap="nowrap"> 
    33 <a href="http://www.alternc.org/faq/?UtilisationAlternc" target="help"><?php __("Online help"); ?></a><br /> 
     33<a href="http://doc.alternc.org/user/" target="help"><?php __("Online help"); ?></a><br /> 
    3434</td></tr> 
  • bureau/admin/menu_mail.php

    r101 r222  
    11<?php 
    22/* 
    3  $Id: menu_mail.php,v 1.2 2003/06/10 06:42:25 root Exp $ 
     3 $Id: menu_mail.php,v 1.3 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    4545<?php    }    ?> 
    4646</td></tr> 
    47 <?php    }    ?> 
     47<?php    } ?> 
  • bureau/admin/menulist.txt

    r139 r222  
    22menu_mail.php 
    33menu_ftp.php 
    4 menu_mailman.php 
    54menu_brouteur.php 
    65menu_stats.php 
  • bureau/admin/plugins/procmail_builder/m_procmail.php

    r102 r222  
    11<?php 
    22/* 
    3  $Id: m_procmail.php,v 1.2 2003/06/10 06:45:19 root Exp $ 
     3 $Id: m_procmail.php,v 1.3 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    8484*****************************************************************************/ 
    8585function disable($user="") { 
    86         global $er; 
     86        global $err; 
    8787        if (!$user) $user=$this->user; 
    8888        $u=substr($user,0,1); 
     
    113113*****************************************************************************/ 
    114114function enable($user="") { 
    115         global $er; 
     115        global $err; 
    116116        if (!$user) $user=$this->user; 
    117117        if (!$this->_connectldap()) { 
     
    152152*****************************************************************************/ 
    153153function readrules($user="") { 
    154         global $er; 
     154        global $err; 
    155155        if (!$user) $user=$this->user; 
    156156        $u=substr($user,0,1); 
     
    200200*****************************************************************************/ 
    201201function writerules($res,$user="") { 
    202         global $er; 
     202        global $err; 
    203203        if (!$user) $user=$this->user; 
    204204        $u=substr($user,0,1); 
     
    208208        } 
    209209        $f=fopen("/var/alternc/mail/$u/$user/.procmailrc","wb"); 
    210         fputs($f,join("",file("/var/alternc/bureau/admin/plugins/procmail_builder/procmailrc.default"))); 
     210        fputs($f,str_replace("%%HOME%%","/var/alternc/mail/$u/$user",join("",file("/var/alternc/bureau/admin/plugins/procmail_builder/procmailrc.default")))); 
     211        //fputs($f,join("",file("/var/alternc/bureau/admin/plugins/procmail_builder/procmailrc.default"))); 
    211212        for($i=0;$i<count($res);$i++) { 
    212213                fputs($f,"# RuleType ".sprintf("%02d",$res[$i]["type"])." -- ".$res[$i]["name"]."\n"); 
     
    226227*****************************************************************************/ 
    227228function addrule($rule,$user="") { 
    228         global $er; 
     229        global $err; 
    229230        if (!$user) $user=$this->user; 
    230231        $u=substr($user,0,1); 
     
    248249*****************************************************************************/ 
    249250function buildrule($rulename,$crit,$crittext,$raction,$foldertogo,$emailto,$autoreplytxt,$user="") { 
    250         global $er; 
     251        global $err; 
    251252        if (!$user) $user=$this->user; 
    252253        $u=substr($user,0,1); 
     
    350351*****************************************************************************/ 
    351352function uprule($res,$i) { 
    352         global $er; 
     353        global $err; 
    353354        $i=intval($i); 
    354355        if (count($res)<$i || $i==0) { 
     
    367368*****************************************************************************/ 
    368369function downrule($res,$i) { 
    369         global $er; 
     370        global $err; 
    370371        $i=intval($i); 
    371372        if ((count($res)-1)<$i) { 
     
    378379        return $res; 
    379380} 
     381 
     382 function myst($str) { 
     383   return str_replace("\\","",str_replace("<","&lt;",str_replace(">","&gt;",$str))); 
     384 } 
    380385 
    381386/***************************************************************************** 
     
    411416                if ($i) $s.=" et "; 
    412417                if (ereg("^\\* \\^Subject\\.\\*(.*)$",$cond[$i],$t)) { 
    413                         $s.=_("procmail_crit_0")."&nbsp;&nbsp;<code>".str_replace("\\","",$t[1])."</code>"; 
     418                        $s.=_("procmail_crit_0")."&nbsp;&nbsp;<code>".$this->myst($t[1])."</code>"; 
    414419                } 
    415420                if (ereg("^\\* \\^From\\.\\*(.*)$",$cond[$i],$t)) { 
    416                         $s.=_("procmail_crit_1")."&nbsp;&nbsp;<code>".str_replace("\\","",$t[1])."</code>"; 
     421                        $s.=_("procmail_crit_1")."&nbsp;&nbsp;<code>".$this->myst($t[1])."</code>"; 
    417422                } 
    418423                if (ereg("^\\* \\^TO_\\.\\*(.*)$",$cond[$i],$t)) { 
    419                         $s.=_("procmail_crit_2")."&nbsp;&nbsp;<code>".str_replace("\\","",$t[1])."</code>"; 
     424                        $s.=_("procmail_crit_2")."&nbsp;&nbsp;<code>".$this->myst($t[1])."</code>"; 
    420425                } 
    421426                if (ereg("^\\* \\^List-Post: (.*)$",$cond[$i],$t)) { 
    422                         $s.=_("procmail_crit_3")."&nbsp;&nbsp;<code>".str_replace("\\","",$t[1])."</code>"; 
     427                        $s.=_("procmail_crit_3")."&nbsp;&nbsp;<code>".$this->myst($t[1])."</code>"; 
    423428                } 
    424429                if (ereg("^\\* \\^List-Id: (.*)$",$cond[$i],$t)) { 
    425                         $s.=_("procmail_crit_4")."&nbsp;&nbsp;<code>".str_replace("\\","",$t[1])."</code>"; 
     430                        $s.=_("procmail_crit_4")."&nbsp;&nbsp;<code>".$this->myst($t[1])."</code>"; 
    426431                } 
    427432                if (ereg("^\\* \\^X-Spam-Status: Yes$",$cond[$i])) { 
  • bureau/admin/sql_add.php

    r186 r222  
    11<?php 
    22/* 
    3  $Id: sql_add.php,v 1.4 2004/05/01 17:30:27 anonymous Exp $ 
     3 $Id: sql_add.php,v 1.5 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    5151<form method="post" action="sql_doadd.php" id="main"> 
    5252<table border="1" cellspacing="0" cellpadding="4"> 
    53 <tr><th><label for="dbn"><?php __("Database name"); ?></label></th><td> 
     53<tr><th><label for="dbn"><?php __("Database"); ?></label></th><td> 
    5454        <?php echo $mem->user["login"]; ?>&nbsp;<b>_</b>&nbsp;<input type="text" class="int" name="dbn" id="dbn" value="<?php echo $dbn; ?>" size="20" maxlength="30" /> 
    5555</td></tr> 
  • bureau/class/config.php

    r61 r222  
    11<?php 
    22/* 
    3  $Id: config.php,v 1.5 2003/05/01 11:37:38 benjamin Exp $ 
     3 $Id: config.php,v 1.6 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    2929*/ 
    3030 
    31 /* Toutes les pages du bureau passent ici. On utilise une sémaphore pour  
    32    s'assurer que personne ne pourra accéder à 2 pages du bureau en même temps. 
    33 */ 
    34 // 1. Get a semaphore id for the alternc magic number (18577) 
    35 $alternc_sem = sem_get ( 18577 ); 
    36 // 2. Declare the shutdown function, that release the semaphore 
    37 function alternc_shutdown() { 
    38   global $alternc_sem; 
    39   sem_release( $alternc_sem ); 
    40 } 
    41 // 3. Register the shutdown function  
    42 register_shutdown_function("alternc_shutdown"); 
    43 // 4. Acquire the semaphore : with that process,  
    44 sem_acquire( $alternc_sem ); 
    45  
    46  
    47  
    48 /* PHPLIB inclusions : */ 
    49 $root="/var/alternc/bureau/"; 
    50 /* Server Domain Name */ 
    51 $host=getenv("HTTP_HOST"); 
    52  
    53 /* Global variables (AlternC configuration) */ 
    54 require_once($root."class/local.php"); 
    55  
    56 require_once($root."class/db_mysql.php"); 
    57 require_once($root."class/functions.php"); 
    58  
    59 // Classe héritée de la classe db de la phplib. 
    60 class DB_system extends DB_Sql { 
    61   var $Host,$Database,$User,$Password; 
    62   function DB_system() { 
    63     global $L_MYSQL_HOST,$L_MYSQL_DATABASE,$L_MYSQL_LOGIN,$L_MYSQL_PWD; 
    64     $this->Host     = $L_MYSQL_HOST; 
    65     $this->Database = $L_MYSQL_DATABASE; 
    66     $this->User     = $L_MYSQL_LOGIN; 
    67     $this->Password = $L_MYSQL_PWD; 
    68   } 
    69 } 
    70  
    71 $db= new DB_system(); 
    72  
    73 $classes=array(); 
    74 /* CLASSES PHP4 : automatic include : */ 
    75 $c=opendir($root."class/"); 
    76 while ($di=readdir($c)) { 
    77   if (ereg("^m_(.*)\\.php$",$di,$match)) { // $ 
    78     $name1="m_".$match[1]; 
    79     $name2=$match[1]; 
    80     $classes[]=$name2; 
    81     require_once($root."class/".$name1.".php"); 
    82   } 
    83 } 
    84 closedir($c); 
    85 /* THE DEFAULT CLASSES ARE : 
    86    dom, ftp, mail, quota, bro, admin, mem, mysql, err 
    87 */ 
    88  
    89  
    90 /* Language */ 
    91 bindtextdomain("alternc", "/var/alternc/bureau/locales"); 
    92  
    93 if (!$do_not_set_lang_env) { 
    94   // setlang is on the link at the login page 
    95   if ($setlang) { 
    96     $lang=$setlang; 
    97   } 
    98   // default language (can be changed here) 
    99   $language="fr_FR"; 
    100   if (!$lang) { 
    101     // Use the browser first preferred language 
    102     $lang=strtolower(substr(trim($HTTP_ACCEPT_LANGUAGE),0,5)); 
    103   } 
    104   // treat special cases such as en_UK or fr_BF : 
    105   if (substr($lang,0,2)=="en") { 
    106     $language ='en_US'; 
    107   } 
    108   if (substr($lang,0,2)=="fr") { 
    109     $language ='fr_FR'; 
    110   } 
    111   if (substr($lang,0,5)=="fr_LU") { 
    112     $language ='fr_LU'; 
    113   } 
    114   if (substr($lang,0,2)=="es") { 
    115     $language ='es_ES'; 
    116   } 
    117   if ($setlang && $language) { 
    118     setcookie("lang",$lang); 
    119   } 
    120   /* Language*/ 
    121   putenv("LC_MESSAGES=$language"); 
    122   putenv("LANG=$language"); 
    123   putenv("LANGUAGE=$language"); 
    124   // this locale MUST be selected in "dpkg-reconfigure locales" 
    125   setlocale(LC_ALL,$language);  
    126   textdomain("alternc"); 
    127 } 
    128  
    129 $mem=new m_mem(); 
    130 $err=new m_err(); 
    131  
    132 /* Check the User identity (if required) */ 
    133 if (!$nocheck) { 
    134   if (!$mem->checkid()) { 
    135     $error=$err->errstr(); 
    136     include("index.php"); 
    137     exit(); 
    138   } 
    139 } 
    140  
    141 for($i=0;$i<count($classes);$i++) { 
    142   if ($classes[$i]!="mem" && $classes[$i]!="err") { 
    143     $name2=$classes[$i]; 
    144     $name1="m_".$name2; 
    145     $$name2= new $name1($mem->uid); 
    146   } 
    147 } 
    148  
     31$nocheck=0; 
     32require_once("config_real.php"); 
    14933 
    15034?> 
  • bureau/class/functions.php

    r168 r222  
    11<?php 
    22/* 
    3  $Id: functions.php,v 1.5 2004/02/10 00:28:02 remi Exp $ 
     3 $Id: functions.php,v 1.6 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    127127/* Check a login mail */ 
    128128function checkloginmail($mail) { 
    129   if (!ereg("^[a-zA-Z0-9_.:-\+]+$",$mail)) { 
     129  if (!ereg("^[a-zA-Z0-9_.:-]+$",$mail)) { 
    130130    return false; 
    131131  } else { 
     
    286286} 
    287287 
     288  /* ----------------------------------------------------------------- */ 
     289  /** Crypte un mot de passe en clair en MD5 avec un salt aléatoire 
     290   * @param string $pass Mot de passe à crypter (max 32 caractères) 
     291   * @return string Retourne le mot de passe crypté 
     292   * @access private 
     293   */ 
     294  function _md5cr($pass,$salt="") { 
     295    if (!$salt) { 
     296      $chars="./0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
     297      for ($i=0;$i<12;$i++) { 
     298        $salt.=substr($chars,(mt_rand(0,strlen($chars))),1); 
     299      } 
     300      $salt="$1$".$salt; 
     301    } 
     302    return crypt($pass,$salt); 
     303  } 
     304 
     305 
    288306?> 
  • bureau/class/m_admin.php

    r153 r222  
    11<?php 
    22/* 
    3  $Id: m_admin.php,v 1.5 2003/09/20 19:41:08 root Exp $ 
     3 $Id: m_admin.php,v 1.6 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 LICENSE 
     
    3636  /* ----------------------------------------------------------------- */ 
    3737  /** 
    38    * $uid contient l'uid du membre actuellement connecté. 
    39    */ 
    40   var $uid=0; 
    41  
    42   /* ----------------------------------------------------------------- */ 
    43   /** 
    4438   * $enabled précise si l'utilisateur actuellement connecté est super-admin ou non 
    4539   */ 
     
    6761   * Constructeur 
    6862   */ 
    69   function m_admin($membre=0) { 
    70     global $db; 
    71     $this->uid=$membre; 
    72     $db->query("SELECT su FROM membres WHERE uid=".$this->uid.";"); 
     63  function m_admin() { 
     64    global $db,$cuid; 
     65    $db->query("SELECT su FROM membres WHERE uid='$cuid';"); 
    7366    $db->next_record(); 
    7467    $this->enabled=$db->f("su"); 
     
    8881  function get($uid) { 
    8982    global $err,$db; 
    90     $err->log("admin","get",$uid); 
     83    //    $err->log("admin","get",$uid); 
    9184    if (!$this->enabled) { 
    9285      $err->raise("admin",1); 
    9386      return false; 
    9487    } 
    95     $db->query("SELECT * FROM membres WHERE uid=$uid;"); 
     88    $db->query("SELECT * FROM membres WHERE uid='$uid';"); 
    9689    if ($db->num_rows()) { 
    9790      $db->next_record(); 
     
    10194      return false; 
    10295    } 
    103     $db->query("SELECT * FROM local WHERE uid=$uid;"); 
     96    $db->query("SELECT * FROM local WHERE uid='$uid';"); 
    10497    if ($db->num_rows()) { 
    10598      $db->next_record(); 
     
    134127   *  
    135128   */ 
    136   function get_list() { 
    137     global $err; 
     129  function get_list($all=0) { 
     130    // PATCHBEN pour ne voir que les comptes que l'on a créé (sauf root) 
     131    global $err,$mem,$cuid; 
    138132    $err->log("admin","get_list"); 
    139133    if (!$this->enabled) { 
     
    142136    } 
    143137    $db=new DB_System(); 
    144     $db->query("SELECT uid FROM membres ORDER BY login;"); 
     138    if ($mem->user[uid]==2000 || $all) { 
     139      $db->query("SELECT uid FROM membres ORDER BY login;"); 
     140    } else { 
     141      $db->query("SELECT uid FROM membres WHERE creator='".$cuid."' ORDER BY login;"); 
     142    } 
    145143    if ($db->num_rows()) { 
    146144      while ($db->next_record()) { 
     
    156154  /* ----------------------------------------------------------------- */ 
    157155  /** 
     156   * Check if I am the creator of the member $uid 
     157   */ 
     158  function checkcreator($uid) { 
     159    global $err,$mem,$db,$cuid; 
     160    // DONE PATCHBEN Check that the current user is editing one of it's own account ! 
     161    // but ROOT (always uid 2000) is almighty 
     162    if ($cuid==2000) { 
     163      return true; 
     164    } 
     165    $db->query("SELECT creator FROM membres WHERE uid='$uid';"); 
     166    $db->next_record(); 
     167    if ($db->Record[creator]!=$cuid) { 
     168      $err->raise("admin",1); 
     169      return false; 
     170    } 
     171    return true; 
     172  } 
     173 
     174  /* ----------------------------------------------------------------- */ 
     175  /** 
    158176   * Crée un nouveau membre hébergé 
    159177   *  
     
    170188   */ 
    171189  function add_mem($login, $pass, $nom, $prenom, $mail, $canpass=1) { 
    172     global $err,$quota,$classes; 
     190    global $err,$quota,$classes,$cuid,$mem; 
    173191    $err->log("admin","add_mem",$login."/".$mail); 
    174192    if (!$this->enabled) { 
     
    189207      $err->raise("admin",10); 
    190208    } 
     209    $pass=_md5cr($pass); 
    191210    $db=new DB_System(); 
    192211    // vérification de l'inexistence du membre dans system.membres 
     
    202221      } 
    203222      // on le créé ensuite dans system.membres et system.local 
    204       $db->query("INSERT INTO membres (uid,login,pass,mail,creator,canpass) VALUES ($uid,'$login','$pass','$mail','".$this->uid."','$canpass');"); 
     223      $db->query("INSERT INTO membres (uid,login,pass,mail,creator,canpass) VALUES ('$uid','$login','$pass','$mail','$cuid','$canpass');"); 
    205224      $db->query("INSERT INTO local(uid,nom,prenom) VALUES('$uid','$nom','$prenom');"); 
    206225      exec("/usr/lib/alternc/mem_add ".$login." ".$uid); 
    207226      // Declenchons les autres classes. 
     227      $mem->su($uid); 
    208228      for($i=0;$i<count($classes);$i++) { 
    209229        if (method_exists($GLOBALS[$classes[$i]],"alternc_add_member")) { 
    210           $GLOBALS[$classes[$i]]->alternc_add_member($uid); 
     230          $GLOBALS[$classes[$i]]->alternc_add_member(); 
    211231        } 
    212232      } 
     233      $mem->unsu(); 
    213234      return $uid; 
    214235    } else { 
     
    241262    } 
    242263    $db=new DB_System(); 
     264    if ($pass) { 
     265      // on modifie aussi le password :  
     266      $pass=_md5cr($pass); 
     267      $ssq=" ,pass='$pass' "; 
     268    } else { 
     269      $ssq=""; 
     270    } 
    243271    if (($db->query("UPDATE local SET nom='$nom', prenom='$prenom' WHERE uid='$uid';")) 
    244         &&($db->query("UPDATE membres SET mail='$mail', pass='$pass', canpass='$canpass', enabled='$enabled' WHERE uid='$uid';"))){ 
     272        &&($db->query("UPDATE membres SET mail='$mail', canpass='$canpass', enabled='$enabled' $ssq WHERE uid='$uid';"))){ 
    245273      return true; 
    246274    } 
     
    261289   */ 
    262290  function del_mem($uid) { 
    263     global $err,$quota,$classes; 
     291    global $err,$quota,$classes,$cuid,$mem,$dom; 
    264292    $err->log("admin","del_mem",$uid); 
     293 
    265294    if (!$this->enabled) { 
    266295      $err->raise("admin",1); 
    267296      return false; 
    268297    } 
    269     $dm=new m_dom($uid); 
    270298    $db=new DB_System(); 
    271299    $tt=$this->get($uid); 
    272     $db->query("SELECT domaine FROM domaines WHERE compte='$uid';"); 
    273     if ($db->num_rows()) { 
    274       while ($db->next_record()) { 
    275         $dm->del_domain($db->f("domaine")); 
     300     
     301    // On devient l'utilisateur :  
     302    $mem->su($uid); 
     303 
     304    // WE MUST call m_dom before all others because of conflicts ... 
     305    $dom->alternc_del_member(); 
     306 
     307      // Send the event to the other classes :  
     308      for($i=0;$i<count($classes);$i++) { 
     309        if (method_exists($GLOBALS[$classes[$i]],"alternc_del_member") && $classes[$i]!="dom") { 
     310          $GLOBALS[$classes[$i]]->alternc_del_member(); 
     311        } 
    276312      } 
    277     } 
    278313    if (($db->query("DELETE FROM membres WHERE uid='$uid';")) && 
    279314        ($db->query("DELETE FROM local WHERE uid='$uid';"))) { 
    280315      exec("/usr/lib/alternc/mem_del ".$tt["login"]); 
    281       // Declenchons les autres classes. 
    282       for($i=0;$i<count($classes);$i++) { 
    283         if (method_exists($GLOBALS[$classes[$i]],"alternc_del_member")) { 
    284           $GLOBALS[$classes[$i]]->alternc_del_member($uid); 
    285         } 
    286       } 
     316      $mem->unsu(); 
    287317      return true; 
    288318    } else { 
    289319      $err->raise("admin",2); 
     320      $mem->unsu(); 
    290321      return false; 
    291322    } 
     
    502533    $mode=intval($mode); 
    503534    if ($mode==0) $mode="0"; 
    504     $db->query("UPDATE tld SET mode=$mode WHERE tld='$tld';"); 
    505     return true; 
    506   } 
    507  
     535    $db->query("UPDATE tld SET mode='$mode' WHERE tld='$tld';"); 
     536    return true; 
     537  } 
    508538 
    509539} /* Classe ADMIN */ 
  • bureau/class/m_bro.php

    r143 r222  
    11<?php 
    22/* 
    3  $Id: m_bro.php,v 1.7 2003/08/19 20:00:39 root Exp $ 
     3 $Id: m_bro.php,v 1.8 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 LICENSE 
     
    3333class m_bro { 
    3434 
    35   /** Membre dont on gère les domaines */ 
    36   var $uid=0; 
    37  
    3835  /** Taille totale du dossier après appel à FileList */ 
    3936  var $sizetot=0; 
     
    7471  /* ----------------------------------------------------------------- */ 
    7572  /** Constructeur */ 
    76   function m_bro($membre=0) { 
    77     $this->uid=$membre; 
     73  function m_bro() { 
    7874  } 
    7975 
     
    114110   */ 
    115111  function filelist($dir="") { 
    116     global $db; 
    117     $db->query("UPDATE browser SET lastdir='$dir' WHERE uid=".$this->uid.";"); 
     112    global $db,$cuid; 
     113    $db->query("UPDATE browser SET lastdir='$dir' WHERE uid='$cuid';"); 
    118114    $absolute=$this->convertabsolute($dir,0); 
    119115    $this->sizetot=0; 
     
    143139   */ 
    144140  function GetPrefs() { 
    145     global $db; 
    146     $db->query("SELECT * FROM browser WHERE uid=".$this->uid.";"); 
     141    global $db,$cuid; 
     142    $db->query("SELECT * FROM browser WHERE uid='$cuid';"); 
    147143    if ($db->num_rows()==0) { 
    148       $db->query("INSERT INTO browser (editsizex, editsizey, listmode, showicons, downfmt, createfile, showtype, uid, editor_font, editor_size) VALUES (70, 21, 0, 0, 0, 0, 0, ".$this->uid.",'Arial, Helvetica, Sans-serif','12px');"); 
    149       $db->query("SELECT * FROM browser WHERE uid=".$this->uid.";"); 
     144      $db->query("INSERT INTO browser (editsizex, editsizey, listmode, showicons, downfmt, createfile, showtype, uid, editor_font, editor_size) VALUES (70, 21, 0, 0, 0, 0, 0, '$cuid','Arial, Helvetica, Sans-serif','12px');"); 
     145      $db->query("SELECT * FROM browser WHERE uid='$cuid';"); 
    150146    } 
    151147    $db->next_record(); 
     
    169165   */ 
    170166  function SetPrefs($editsizex, $editsizey, $listmode, $showicons, $downfmt, $createfile, $showtype, $editor_font, $editor_size, $golastdir) { 
    171     global $db; 
     167    global $db,$cuid; 
    172168    $editsizex=intval($editsizex);      $editsizey=intval($editsizey); 
    173169    $listmode=intval($listmode);        $showicons=intval($showicons); 
    174170    $showtype=intval($showtype);        $downfmt=intval($downfmt); 
    175171    $createfile=intval($createfile);    $golastdir=intval($golastdir); 
    176     $db->query("SELECT * FROM browser WHERE uid=".$this->uid.";"); 
     172    $db->query("SELECT * FROM browser WHERE uid='$cuid';"); 
    177173    if ($db->num_rows()==0) { 
    178       $db->query("INSERT INTO browser (editsizex, editsizey, listmode, showicons, downfmt, createfile, showtype, uid, editor_font, editor_size, golastdir) VALUES (70, 21, 0, 0, 0, 0, 0, ".$this->uid.",'Arial, Helvetica, Sans-serif','12px',1);"); 
    179     } 
    180     $db->query("UPDATE browser SET editsizex=$editsizex, editsizey=$editsizey, listmode=$listmode, showicons=$showicons, downfmt=$downfmt, createfile=$createfile, showtype=$showtype, editor_font='$editor_font', editor_size='$editor_size', golastdir='$golastdir' WHERE uid=".$this->uid.";"); 
     174      $db->query("INSERT INTO browser (editsizex, editsizey, listmode, showicons, downfmt, createfile, showtype, uid, editor_font, editor_size, golastdir) VALUES (70, 21, 0, 0, 0, 0, 0, '".$this->uid."','Arial, Helvetica, Sans-serif','12px',1);"); 
     175    } 
     176    $db->query("UPDATE browser SET editsizex='$editsizex', editsizey='$editsizey', listmode='$listmode', showicons='$showicons', downfmt='$downfmt', createfile='$createfile', showtype='$showtype', editor_font='$editor_font', editor_size='$editor_size', golastdir='$golastdir' WHERE uid='$cuid';"); 
    181177    return true; 
    182178  } 
     
    257253   * @param string $file Fichier dont on souhaite connaitre la taille 
    258254   * @return integer Taille du fichier en octets. 
     255   * TODO : create a du cache ... 
    259256   */ 
    260257  function fsize($file) { 
     
    273270   */ 
    274271  function CreateDir($dir,$file) { 
    275     global $db; 
     272    global $db,$cuid; 
    276273    $absolute=$this->convertabsolute($dir,0); 
    277274    $file=ssla($file); 
     
    279276      mkdir($absolute."/".$file,00777); 
    280277    } 
    281     $db->query("UPDATE browser SET crff=1 WHERE uid=".$this->uid.";"); 
     278    $db->query("UPDATE browser SET crff=1 WHERE uid='$cuid';"); 
    282279  } 
    283280 
     
    289286   */ 
    290287  function CreateFile($dir,$file) { 
    291     global $db,$err; 
     288    global $db,$err,$cuid; 
    292289    $absolute=$this->convertabsolute($dir,0); 
    293290    if (!$absolute) { 
     
    299296      touch($absolute."/".$file); 
    300297    } 
    301     $db->query("UPDATE browser SET crff=0 WHERE uid=".$this->uid.";"); 
     298    $db->query("UPDATE browser SET crff=0 WHERE uid='$cuid';"); 
    302299  } 
    303300 
     
    479476   */ 
    480477  function viewurl($dir,$name) { 
    481     global $db; 
     478    global $db,$cuid; 
    482479    // Is it in cache ? 
    483480    if (substr($dir,0,1)=="/") $dir=substr($dir,1); 
     
    487484      $end="";  $beg=$dir;      $tofind=true; 
    488485      while ($tofind) { 
    489         $db->query("SELECT sub,domaine FROM sub_domaines WHERE compte=".$this->uid." 
     486        $db->query("SELECT sub,domaine FROM sub_domaines WHERE compte='$cuid' 
    490487                         AND type=0 AND (valeur='/$beg/' or valeur='/$beg');"); 
    491488        $db->next_record(); 
     
    515512  } 
    516513 
    517   // Is it still in use ? TODO : Check if this function is still used :) 
    518   /* ----------------------------------------------------------------- */ 
    519514  function content_send($R,$file) { 
    520515    global $err; 
     
    573568    header("Content-Transfer-Encoding: binary"); 
    574569    $d=escapeshellarg(substr($this->convertabsolute($dir,0),1)); 
     570    settimelimit(0); 
    575571    passthru("/bin/tar -cZ -C /var/alternc/html/".substr($mem->user["login"],0,1)."/".$mem->user["login"]."/ $d"); 
    576572  } 
     
    587583    header("Content-Transfer-Encoding: binary"); 
    588584    $d=escapeshellarg(substr($this->convertabsolute($dir,0),1)); 
     585    settimelimit(0); 
    589586    passthru("/bin/tar -cz -C /var/alternc/html/".substr($mem->user["login"],0,1)."/".$mem->user["login"]."/ $d"); 
    590587  } 
     
    602599    header("Content-Transfer-Encoding: binary"); 
    603600    $d=escapeshellarg(substr($this->convertabsolute($dir,0),1)); 
     601    settimelimit(0); 
    604602    passthru("/bin/tar -cj -C /var/alternc/html/".substr($mem->user["login"],0,1)."/".$mem->user["login"]."/ $d"); 
    605603  } 
     
    616614    header("Content-Transfer-Encoding: binary"); 
    617615    $d=escapeshellarg($this->convertabsolute("/var/alternc/html/".substr($mem->user["login"],0,1)."/".$mem->user["login"]."/".$dir,0)); 
     616    settimelimit(0); 
    618617    passthru("/usr/bin/zip -r - /var/alternc/html/".substr($mem->user["login"],0,1)."/".$mem->user["login"]."/$d"); 
    619618  } 
     
    637636  function _delete($file) { 
    638637    // permet d'effacer de nombreux fichiers 
    639     //settimelimit(0); 
     638    @set_time_limit(0); 
    640639    //chmod($file,0777); 
    641640    if (is_dir($file)) { 
  • bureau/class/m_dom.php

    r178 r222  
    11<?php 
    22/* 
    3  $Id: m_dom.php,v 1.5 2004/04/21 04:39:23 anarcat Exp $ 
     3 $Id: m_dom.php,v 1.6 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 LICENSE 
     
    3333class m_dom { 
    3434 
    35   /** Membre dont on gère les domaines */ 
    36   var $uid=0; 
    37  
    38   var $alternc_quota_name="dom"; 
    39  
    4035  /** $domains : Cache des domaines du membre 
    4136   * @access private 
     
    8277   * Constructeur 
    8378   */ 
    84   function m_dom($membre=0) { 
    85     $this->uid=$membre; 
     79  function m_dom() { 
     80  } 
     81 
     82  /* ----------------------------------------------------------------- */ 
     83  /** 
     84   * Quota name 
     85   */ 
     86  function alternc_quota_names() { 
     87    return "dom"; 
    8688  } 
    8789 
     
    9597   */ 
    9698  function enum_domains() { 
    97     global $db,$err; 
     99    global $db,$err,$cuid; 
    98100    $err->log("dom","enum_domains"); 
    99     if (!is_array($this->domains)) { 
    100       $db->query("select * from domaines where compte=".$this->uid.";"); 
    101       $this->domains=array(); 
    102       if ($db->num_rows()>0) { 
    103         while ($db->next_record()) { 
    104           $this->domains[]=$db->f("domaine"); 
    105         } 
     101    $db->query("select * from domaines where compte='$cuid';"); 
     102    $this->domains=array(); 
     103    if ($db->num_rows()>0) { 
     104      while ($db->next_record()) { 
     105        $this->domains[]=$db->f("domaine"); 
    106106      } 
    107107    } 
     
    122122   */ 
    123123  function del_domain($dom) { 
    124     global $db,$err,$quota,$classes; 
     124    global $db,$err,$quota,$classes,$cuid; 
    125125    $err->log("dom","del_domain",$dom); 
    126126    $dom=strtolower($dom); 
     
    131131    } 
    132132    $db->next_record(); 
    133     if ($db->f("compte")!=$this->uid) { 
     133    if ($db->f("compte")!=$cuid) { 
    134134      $err->raise("dom",2,$dom); 
    135135      return false; 
     
    173173  */ 
    174174  function add_domain($domain,$dns,$unerase=0,$force=0) { 
    175     global $db,$err,$quota,$classes,$L_MX,$L_FQDN,$tld; 
     175    global $db,$err,$quota,$classes,$L_MX,$L_FQDN,$tld,$cuid; 
    176176    $err->log("dom","add_domain",$domain); 
    177177    $mx="1"; 
     
    243243    } 
    244244    if ($noerase) $noerase="1"; else $noerase="0"; 
    245     $db->query("insert into domaines (compte,domaine,mx,gesdns,gesmx,noerase) values (".$this->uid.",'$domain','$L_MX',$dns,$mx,$noerase);"); 
    246     $db->query("insert into domaines_standby (compte,domaine,mx,gesdns,gesmx,action) values (".$this->uid.",'$domain','$L_MX',$dns,$mx,0);"); // INSERT 
     245    $db->query("insert into domaines (compte,domaine,mx,gesdns,gesmx,noerase) values ('$cuid','$domain','$L_MX','$dns','$mx','$noerase');"); 
     246    $db->query("insert into domaines_standby (compte,domaine,mx,gesdns,gesmx,action) values ('$cuid','$domain','$L_MX','$dns','$mx',0);"); // INSERT 
    247247    // Creation des 3 sous-domaines par défaut : Vide, www et mail 
    248     $db->query("insert into sub_domaines (compte,domaine,sub,valeur,type) values (".$this->uid.",'$domain','','/',0);"); 
    249     $db->query("insert into sub_domaines (compte,domaine,sub,valeur,type) values (".$this->uid.",'$domain','www','/',0);"); 
    250     $db->query("insert into sub_domaines (compte,domaine,sub,valeur,type) values (".$this->uid.",'$domain','mail','',3);"); 
     248    $db->query("insert into sub_domaines (compte,domaine,sub,valeur,type) values ('$cuid','$domain','','/',0);"); 
     249    $db->query("insert into sub_domaines (compte,domaine,sub,valeur,type) values ('$cuid','$domain','www','/',0);"); 
     250    $db->query("insert into sub_domaines (compte,domaine,sub,valeur,type) values ('$cuid','$domain','mail','',3);"); 
    251251    $quota->inc("dom"); 
    252252    // DEPENDANCE : 
    253253    // Lancement de add_dom sur les classes domain_sensitive : 
    254     // TODO : creer des instances de ces classes plutôt que d'utiliser les globals car : 
    255     // 1. c'est plus propre :) 
    256     // 2. ca permettra aux admins d'insaller un domaine sur un autre compte, en mode NOERASE+FORCE 
    257     // Declenchons les autres classes. 
     254     // Declenchons les autres classes.     
    258255    for($i=0;$i<count($classes);$i++) { 
    259256      if (method_exists($GLOBALS[$classes[$i]],"alternc_add_domain")) { 
     
    429426   */ 
    430427  function get_domain_all($dom) { 
    431     global $db,$err; 
     428    global $db,$err,$cuid; 
    432429    $err->log("dom","get_domain_all",$dom); 
    433430    // Locked ? 
     
    442439    } 
    443440    $r["name"]=$dom; 
    444     $db->query("select * from domaines_standby where compte=".$this->uid." and domaine='$dom'"); 
     441    $db->query("select * from domaines_standby where compte='$cuid' and domaine='$dom'"); 
    445442    if ($db->num_rows()>0) { 
    446443      $err->raise("dom",13); 
    447444      return false; 
    448445    } 
    449     $db->query("select * from domaines where compte=".$this->uid." and domaine='$dom'"); 
     446    $db->query("select * from domaines where compte='$cuid' and domaine='$dom'"); 
    450447    if ($db->num_rows()==0) { 
    451448      $err->raise("dom",1,$dom); 
     
    458455    $r[noerase]=$db->Record[noerase]; 
    459456    $db->free(); 
    460     $db->query("select count(*) as cnt from sub_domaines where compte=".$this->uid." and domaine='$dom'"); 
     457    $db->query("select count(*) as cnt from sub_domaines where compte='$cuid' and domaine='$dom'"); 
    461458    $db->next_record(); 
    462459    $r["nsub"]=$db->Record["cnt"]; 
    463460    $db->free(); 
    464     $db->query("select * from sub_domaines where compte=".$this->uid." and domaine='$dom'"); 
     461    $db->query("select * from sub_domaines where compte='$cuid' and domaine='$dom'"); 
    465462    // Pas de webmail, on le cochera si on le trouve. 
    466463    $this->webmail=0; 
     
    495492   */ 
    496493  function get_sub_domain_all($dom,$sub) { 
    497     global $db,$err; 
     494    global $db,$err,$cuid; 
    498495    $err->log("dom","get_sub_domain_all",$dom."/".$sub); 
    499496    // Locked ? 
     
    507504      return false; 
    508505    } 
    509     $db->query("select * from sub_domaines where compte=".$this->uid." and domaine='$dom' and sub='$sub'"); 
     506    $db->query("select * from sub_domaines where compte='$cuid' and domaine='$dom' and sub='$sub'"); 
    510507    if ($db->num_rows()==0) { 
    511508      $err->raise("dom",14); 
     
    538535   */ 
    539536  function set_sub_domain($dom,$sub,$type,$action,$dest) { 
    540     global $db,$err; 
     537    global $db,$err,$cuid; 
    541538    $err->log("dom","set_sub_domain",$dom."/".$sub); 
    542539    // Locked ? 
     
    576573      // Le sous-domaine n'existe pas, on le crée seulement si $action vaut add 
    577574      if ($action=="add") { 
    578         $db->query("insert into sub_domaines (compte,domaine,sub,valeur,type) values (".$this->uid.",'$dom','$sub','$dest',$type);"); 
     575        $db->query("insert into sub_domaines (compte,domaine,sub,valeur,type) values ('$cuid','$dom','$sub','$dest',$type);"); 
    579576        $db->query("delete from sub_domaines_standby where domaine='$dom' and sub='$sub';"); 
    580         $db->query("insert into sub_domaines_standby (compte,domaine,sub,valeur,type,action) values (".$this->uid.",'$dom','$sub','$dest',$type,0);"); // INSERT 
     577        $db->query("insert into sub_domaines_standby (compte,domaine,sub,valeur,type,action) values ('$cuid','$dom','$sub','$dest','$type',0);"); // INSERT 
    581578      } else { 
    582579        $err->raise("dom",14); 
     
    591588        } 
    592589        // OK, des modifs ont été faites, on valide : 
    593         $db->query("update sub_domaines set type=$type, valeur='$dest' where domaine='$dom' and sub='$sub'"); 
     590        $db->query("update sub_domaines set type='$type', valeur='$dest' where domaine='$dom' and sub='$sub'"); 
    594591        $db->query("delete from sub_domaines_standby where domaine='$dom' and sub='$sub'"); 
    595         $db->query("insert into sub_domaines_standby (compte,domaine,sub,valeur,type,action) values (".$this->uid.",'$dom','$sub','$dest',$type,1);"); // UPDATE 
     592        $db->query("insert into sub_domaines_standby (compte,domaine,sub,valeur,type,action) values ('$cuid','$dom','$sub','$dest','$type',1);"); // UPDATE 
    596593      } else { 
    597594        $err->raise("dom",16); 
     
    612609   */ 
    613610  function del_sub_domain($dom,$sub) { 
    614     global $db,$err; 
     611    global $db,$err,$cuid; 
    615612    $err->log("dom","del_sub_domain",$dom."/".$sub); 
    616613    // Locked ? 
     
    632629      $db->query("delete from sub_domaines where domaine='$dom' and sub='$sub'"); 
    633630      $db->query("delete from sub_domaines_standby where domaine='$dom' and sub='$sub'"); 
    634       $db->query("insert into sub_domaines_standby (compte,domaine,sub,valeur,type,action) values (".$this->uid.",'$dom','$sub','".$r["dest"]."',".$r["type"].",2);"); // DELETE 
     631      $db->query("insert into sub_domaines_standby (compte,domaine,sub,valeur,type,action) values ('$cuid','$dom','$sub','".$r["dest"]."','".$r["type"]."',2);"); // DELETE 
    635632    } 
    636633    return true; 
     
    651648   */ 
    652649  function edit_domain($dom,$dns,$mx) { 
    653     global $db,$err,$L_MX,$classes; 
     650    global $db,$err,$L_MX,$classes,$cuid; 
    654651    $err->log("dom","edit_domain",$dom); 
    655652    // Locked ? 
     
    685682     for($i=0;$i<count($classes);$i++) { 
    686683      if (method_exists($GLOBALS[$classes[$i]],"alternc_add_mx_domain")) { 
    687         $GLOBALS[$classes[$i]]->alternc_add_mx_domain($dom); 
     684        $GLOBALS[$classes[$i]]->alternc_add_mx_domain($domain); 
    688685      } 
    689686        } 
    690 /* 
     687/* TODO : if it work, delete this code... 
    691688      if (is_object($GLOBALS["ma"])) { 
    692689        // Comptes MAILS, destruction du domaine : 
     
    708705     for($i=0;$i<count($classes);$i++) { 
    709706      if (method_exists($GLOBALS[$classes[$i]],"alternc_del_mx_domain")) { 
    710         $GLOBALS[$classes[$i]]->alternc_del_mx_domain($dom); 
     707        $GLOBALS[$classes[$i]]->alternc_del_mx_domain($domain); 
    711708      } 
    712709        } 
    713 /* 
     710/* TODO : if it work, delete this code... 
    714711      if (is_object($GLOBALS["ma"])) { 
    715712        // Comptes MAILS, destruction du domaine : 
     
    727724    } 
    728725 
    729     $db->query("update domaines set gesdns=$dns, mx='$mx', gesmx=$gesmx where domaine='$dom'"); 
    730     $db->query("insert into domaines_standby (compte,domaine,mx,gesdns,gesmx,action) values (".$this->uid.",'$dom','$mx',$dns,$gesmx,1);"); // UPDATE 
     726    $db->query("update domaines set gesdns='$dns', mx='$mx', gesmx='$gesmx' where domaine='$dom'"); 
     727    $db->query("insert into domaines_standby (compte,domaine,mx,gesdns,gesmx,action) values ('$cuid','$dom','$mx','$dns','$gesmx',1);");  
     728    // UPDATE 
    731729    return true; 
    732730  } // edit_domain 
     
    776774  /* ----------------------------------------------------------------- */ 
    777775  /** 
     776   * Efface un compte (tous ses domaines) 
     777   */ 
     778  function alternc_del_member() { 
     779    global $err; 
     780    $err->log("dom","alternc_del_member"); 
     781    $li=$this->enum_domains(); 
     782    foreach($li as $dom) { 
     783      $this->del_domain($dom); 
     784    } 
     785    return true; 
     786  } 
     787 
     788 
     789  /* ----------------------------------------------------------------- */ 
     790  /** 
    778791   * Recalcule le quota domaine de l'utilisateur courant, 
    779792   * ou celui de $id, si spécifié. 
    780793   * @access private 
    781794   */ 
    782   function alternc_quota_check($id=-1) { 
    783     global $db,$err,$quota; 
     795  function alternc_quota_check() { 
     796    global $db,$err,$quota,$cuid; 
    784797    $err->log("dom","checkquota"); 
    785     if (!$id==-1) $id=$this->uid; 
    786     $db->query("SELECT COUNT(*) AS cnt FROM domaines WHERE compte=$id"); 
     798    $db->query("SELECT COUNT(*) AS cnt FROM domaines WHERE compte='$cuid'"); 
    787799    $db->next_record(); 
    788     $quota->setquota("dom",$db->f("cnt"),1,$id); 
     800    $quota->setquota("dom",$db->f("cnt"),1); 
    789801    return true; 
    790802  } 
    791803 
     804  /* ----------------------------------------------------------------- */ 
     805  /** 
     806   * Exporte toutes les informations domaine du compte. 
     807   * @access private 
     808   * EXPERIMENTAL 'sid' function ;)  
     809   */ 
     810  function alternc_export() { 
     811    global $db,$err; 
     812    $err->log("dom","export"); 
     813    $this->enum_domains(); 
     814    $str="<dom>\n"; 
     815    foreach ($this->domains as $d) { 
     816      $str.="  <domain>\n    <name>$d</name>\n"; 
     817      $s=$this->get_domain_all($d); 
     818      $str.="    <hasdns>$s[dns]</hasdns>\n"; 
     819      $str.="    <hasmx>$s[mx]</hasmx>\n"; 
     820      $str.="    <mx>$s[mail]</mx>\n"; 
     821      if (is_array($s[sub])) { 
     822        foreach ($s[sub] as $sub) { 
     823          $str.="    <subdomain>"; 
     824          $str.="<name>".$sub[name]."</name>"; 
     825          $str.="<dest>".$sub[dest]."</dest>"; 
     826          $str.="<type>".$sub[type]."</type>"; 
     827          $str.="</subdomain>\n"; 
     828        } 
     829      } 
     830      $str.="  </domain>\n"; 
     831    } 
     832    $str.="</dom>\n"; 
     833    return $str; 
     834  } 
     835 
     836 
    792837} /* Class m_domains */ 
    793838 
  • bureau/class/m_err.php

    r92 r222  
    11<?php 
    22/* 
    3  $Id: m_err.php,v 1.3 2003/06/09 19:46:31 root Exp $ 
     3 $Id: m_err.php,v 1.4 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 LICENSE 
     
    123123   */ 
    124124  function log($clsid,$function,$param="") { 
    125     global $mem; 
     125    global $mem,$cuid; 
    126126    $f=@fopen($this->logfile,"ab"); 
    127127    if ($f) { 
    128       fputs($f,date("d/m/Y h:i:s")." - CALL - "); 
     128      fputs($f,date("d/m/Y H:i:s")." - CALL - "); 
    129129      fputs($f,$mem->user["login"]." - "); 
    130130      fputs($f,$clsid." - ".$function." - ".$param."\n"); 
  • bureau/class/m_ftp.php

    r105 r222  
    11<?php 
    22/* 
    3  $Id: m_ftp.php,v 1.5 2003/06/10 07:31:36 root Exp $ 
     3 $Id: m_ftp.php,v 1.6 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 LICENSE 
     
    3232class m_ftp { 
    3333 
    34   /** Membre dont on gère les Comptes FTP */ 
    35   var $uid; 
    36   var $alternc_quota_name="ftp"; 
    37  
    3834  /* ----------------------------------------------------------------- */ 
    3935  /** 
    4036   * Constructeur 
    4137   */ 
    42   function m_ftp($membre=0) { 
    43     $this->uid=$membre; 
     38  function m_ftp() { 
     39  } 
     40 
     41  /* ----------------------------------------------------------------- */ 
     42  /** 
     43   * Quota name 
     44   */ 
     45  function alternc_quota_names() { 
     46    return "ftp"; 
    4447  } 
    4548 
     
    5558   */ 
    5659  function get_list() { 
    57     global $db,$err; 
     60    global $db,$err,$cuid; 
    5861    $err->log("ftp","get_list"); 
    5962    $r=array(); 
    60     $db->query("SELECT id, name, password, homedir FROM ftpusers WHERE uid=".$this->uid." ORDER BY homedir;"); 
     63    $db->query("SELECT id, name, password, homedir FROM ftpusers WHERE uid='$cuid' ORDER BY homedir;"); 
    6164    if ($db->num_rows()) { 
    6265      while ($db->next_record()) { 
     
    8487   */ 
    8588  function get_ftp_details($id) { 
    86     global $db,$err; 
     89    global $db,$err,$cuid; 
    8790    $err->log("ftp","get_ftp_details",$id); 
    8891    $r=array(); 
    89     $db->query("SELECT id, name, password, homedir FROM ftpusers WHERE uid=".$this->uid." AND id=$id;"); 
     92    $db->query("SELECT id, name, password, homedir FROM ftpusers WHERE uid='$cuid' AND id='$id';"); 
    9093    if ($db->num_rows()) { 
    9194      $db->next_record(); 
     
    115118   */ 
    116119  function prefix_list() { 
    117     global $db,$mem; 
     120    global $db,$mem,$cuid; 
    118121    $r=array(); 
    119122    $r[]=$mem->user["login"]; 
    120     $db->query("SELECT domaine FROM domaines WHERE compte=".$this->uid." ORDER BY domaine;"); 
     123    $db->query("SELECT domaine FROM domaines WHERE compte='$cuid' ORDER BY domaine;"); 
    121124    while ($db->next_record()) { 
    122125      $r[]=$db->f("domaine"); 
     
    133136   */ 
    134137  function select_prefix_list($current) { 
    135     global $db; 
    136138    $r=$this->prefix_list(); 
    137139    reset($r); 
     
    153155   */ 
    154156  function put_ftp_details($id,$prefixe,$login,$pass,$dir) { 
    155     global $mem,$db,$err,$bro; 
     157    global $mem,$db,$err,$bro,$cuid; 
    156158    $err->log("ftp","put_ftp_details",$id); 
    157     $db->query("SELECT count(*) AS cnt FROM ftpusers WHERE id=$id and uid=".$this->uid.";"); 
     159    $db->query("SELECT count(*) AS cnt FROM ftpusers WHERE id='$id' and uid='$cuid';"); 
    158160    $db->next_record(); 
    159161    if (!$db->f("cnt")) { 
     
    173175    $l=substr($lo,0,1); 
    174176    if ($login) $login="_".$login; 
    175     $db->query("SELECT COUNT(*) AS cnt FROM ftpusers WHERE id!=$id AND name='$prefixe$login';"); 
     177    $db->query("SELECT COUNT(*) AS cnt FROM ftpusers WHERE id!='$id' AND name='$prefixe$login';"); 
    176178    $db->next_record(); 
    177179    if ($db->f("cnt")) { 
     
    187189      return false; 
    188190    } 
    189     $db->query("UPDATE ftpusers SET name='".$prefixe.$login."', password='$pass', homedir='/var/alternc/html/$l/$lo/$dir', uid=".$this->uid." WHERE id=$id;"); 
     191    $db->query("UPDATE ftpusers SET name='".$prefixe.$login."', password='$pass', homedir='/var/alternc/html/$l/$lo/$dir', uid='$cuid' WHERE id='$id';"); 
    190192    return true; 
    191193  } 
     
    197199   */ 
    198200  function delete_ftp($id) { 
    199     global $db,$err,$quota; 
     201    global $db,$err,$quota,$cuid; 
    200202    $err->log("ftp","delete_ftp",$id); 
    201     $db->query("SELECT name FROM ftpusers WHERE id=$id and uid=".$this->uid.";"); 
     203    $db->query("SELECT name FROM ftpusers WHERE id='$id' and uid='$cuid';"); 
    202204    $db->next_record(); 
    203205    $name=$db->f("name"); 
     
    206208      return false; 
    207209    } 
    208     $db->query("DELETE FROM ftpusers WHERE id=$id"); 
     210    $db->query("DELETE FROM ftpusers WHERE id='$id'"); 
    209211    $quota->dec("ftp"); 
    210212    return $name; 
     
    221223   */ 
    222224  function add_ftp($prefixe,$login,$pass,$dir) { 
    223     global $mem,$db,$err,$quota,$bro; 
     225    global $mem,$db,$err,$quota,$bro,$cuid; 
    224226    $err->log("ftp","add_ftp",$prefixe."_".$login); 
    225227    $dir=$bro->convertabsolute($dir); 
     
    239241      return false; 
    240242    } 
    241     $db->query("SELECT login FROM membres WHERE uid=".$this->uid.";"); 
     243    $db->query("SELECT login FROM membres WHERE uid='$cuid';"); 
    242244    $db->next_record(); 
    243245    $lo=$db->f("login"); 
     
    253255    if ($quota->cancreate("ftp")) { 
    254256      $quota->inc("ftp"); 
    255       $db->query("INSERT INTO ftpusers (name,password,homedir,uid) VALUES ('".$prefixe.$login."','$pass','/var/alternc/html/$l/$lo/$dir',".$this->uid.")"); 
     257      $db->query("INSERT INTO ftpusers (name,password,homedir,uid) VALUES ('".$prefixe.$login."','$pass','/var/alternc/html/$l/$lo/$dir','$cuid')"); 
    256258      return true; 
    257259    } else { 
     
    269271    global $mem,$db,$err; 
    270272    $err->log("ftp","is_ftp",$dir); 
    271     $lo=$mem->user; 
     273    $lo=$mem->user["login"]; 
    272274    $l=substr($lo,0,1); 
    273275    if (substr($dir,0,1)=="/") $dir=substr($dir,1); 
     
    287289   */ 
    288290  function alternc_del_domain($dom) { 
    289     global $db,$quota,$err; 
     291    global $db,$quota,$err,$cuid; 
    290292    $err->log("ftp","del_dom",$dom); 
    291     $db->query("SELECT COUNT(*) AS cnt FROM ftpusers WHERE uid=".$this->uid." AND name LIKE '$dom%'"); 
     293    $db->query("SELECT COUNT(*) AS cnt FROM ftpusers WHERE uid='$cuid' AND name LIKE '$dom%'"); 
    292294    $db->next_record(); 
    293295    $cnt=$db->Record["cnt"]; 
    294296    $r=$quota->getquota("ftp"); 
    295297    $quota->setquota("ftp",$r["u"]-$cnt,1); 
    296     $db->query("DELETE FROM ftpusers WHERE uid=".$this->uid." AND name LIKE '$dom%'"); 
     298    $db->query("DELETE FROM ftpusers WHERE uid='$cuid' AND name LIKE '$dom%'"); 
    297299    return true; 
    298300  } 
     
    303305   * @access private 
    304306   */ 
    305   function deluser($uid) { 
    306     global $db,$quota,$err; 
    307     $err->log("ftp","del_user",$uid); 
    308     // on détruit les comptes ftp associés au membre correspondant 
    309     $db->query("DELETE FROM ftpusers WHERE uid=$uid"); 
     307  function alternc_del_member() { 
     308    global $db,$quota,$err,$cuid; 
     309    $err->log("ftp","del_member"); 
     310    $db->query("DELETE FROM ftpusers WHERE uid='$cuid'"); 
    310311    return true; 
    311312  } 
     
    316317   * @access private 
    317318   */ 
    318   function alternc_quota_check($id=-1) { 
     319  function alternc_quota_check() { 
    319320    global $db,$err,$quota; 
    320321    $err->log("ftp","checkquota"); 
    321     if (!$id==-1) $id=$this->uid; 
    322     $db->query("SELECT COUNT(*) AS cnt FROM ftpusers WHERE uid=$id"); 
    323     $db->next_record(); 
    324     $quota->setquota("ftp",$db->f("cnt"),1,$id); 
     322    $db->query("SELECT COUNT(*) AS cnt FROM ftpusers WHERE uid='$cuid'"); 
     323    $db->next_record(); 
     324    $quota->setquota("ftp",$db->f("cnt"),1); 
    325325    return true; 
    326326  } 
  • bureau/class/m_hta.php

    r137 r222  
    11<?php 
    22/* 
    3  $Id: m_hta.php,v 1.3 2003/08/19 18:11:40 root Exp $ 
     3 $Id: m_hta.php,v 1.4 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    4040class m_hta { 
    4141 
    42   /** Membre dont on souhaite gérer les accès restreints */ 
    43   var $mid=0; 
    44  
    4542  /*---------------------------------------------------------------------------*/ 
    4643  /** 
    4744   * Constructeur de la classe m_webaccess, initialise le membre 
    48    * @param integer $membre Numéro du membre courant 
    49    */ 
    50   function m_webaccess($membre=0) { 
    51     $this->mid=$membre; 
     45   */ 
     46  function m_webaccess() { 
    5247  } 
    5348 
     
    191186   */ 
    192187  function add_user($user,$password,$dir) { 
    193     global $err, $bro, $mail; // mail class give md5crypt password function 
     188    global $err, $bro; 
    194189    $err->log("hta","add_user",$user."/".$dir); 
    195190    $absolute=$bro->convertabsolute($dir,0); 
     
    213208        fwrite($file,"\n"); 
    214209      } 
    215       fwrite($file, "$user:".$mail->_md5cr($password)."\n"); 
     210      fwrite($file, "$user:"._md5cr($password)."\n"); 
    216211      fclose($file); 
    217212      return true; 
     
    266261   */ 
    267262  function change_pass($user,$newpass,$dir) { 
    268     global $bro,$err,$mail; 
     263    global $bro,$err; 
    269264    $err->log("hta","change_pass",$user."/".$dir); 
    270265    $absolute=$bro->convertabsolute($dir,0); 
     
    283278      } 
    284279    } 
    285     fwrite($newf, "$user:".$mail->_md5cr($newpass)."\n"); 
     280    fwrite($newf, "$user:"._md5cr($newpass)."\n"); 
    286281    fclose($file); 
    287282    fclose($newf); 
  • bureau/class/m_mail.php

    r174 r222  
    11<?php 
    22/* 
    3  $Id: m_mail.php,v 1.9 2004/02/17 15:38:26 remi Exp $ 
     3 $Id: m_mail.php,v 1.10 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 LICENSE 
     
    3333class m_mail { 
    3434 
    35   /** Membre dont on gère les mails */ 
    36   var $uid=0; 
    37  
    38   var $alternc_quota_name="mail"; 
    39  
    4035  /** Connexion ldap 
    4136   * @access private 
     
    5853   * Constructeur 
    5954   */ 
    60   function m_mail($membre=0) { 
     55  function m_mail() { 
    6156    global $L_LDAP_HOST,$L_LDAP_ROOT,$L_LDAP_ROOTPWD,$L_LDAP_POSTFIX; 
    62     $this->uid=$membre; 
    6357    $this->ldap=array( 
    6458                      "server"  =>      $L_LDAP_HOST, 
     
    7064 
    7165  /* ----------------------------------------------------------------- */ 
     66  /** 
     67   * Liste des quotas 
     68   */ 
     69  function alternc_quota_names() { 
     70    return "mail"; 
     71  } 
     72 
     73  /* ----------------------------------------------------------------- */ 
    7274  /** Retourne la liste des domaines hébergés en mails sur le compte. 
    7375   * @return array Tableau indexé des domaines hébergés en mail. 
    7476   */ 
    7577  function enum_domains() { 
    76     global $db,$err; 
     78    global $db,$err,$cuid; 
    7779    $err->log("mail","enum_domains"); 
    7880    if (!is_array($this->domains)) { 
    79       $db->query("select * from domaines where compte=".$this->uid." AND gesmx=1;"); 
     81      $db->query("select * from domaines where compte='$cuid' AND gesmx=1;"); 
    8082      $this->domains=array(); 
    8183      if ($db->num_rows()>0) { 
     
    100102   */ 
    101103  function enum_doms_mails($dom,$sort=0) { 
    102     global $err; 
     104    global $err,$cuid; 
    103105    $err->log("mail","enum_doms_mails",$dom); 
    104106    if (!$this->_connectldap()) { 
     
    106108      return false; 
    107109    } 
    108     $sr=ldap_search($this->ds,"dc=domains,".$this->ldap["basedn"],"(&(uid=".$this->uid.")(type=mail)(mail=*@".$dom."))",array("mail","pop")); 
     110    $sr=ldap_search($this->ds,"dc=domains,".$this->ldap["basedn"],"(&(uid=$cuid)(type=mail)(mail=*@".$dom."))",array("mail","pop")); 
    109111    $info = ldap_get_entries($this->ds, $sr); 
    110112    if ($info["count"]==0) { 
     
    115117    for($i=0;$i<$info["count"];$i++) { 
    116118      if ($info[$i]["pop"][0]) { 
     119        /* 
    117120        $size=exec("/usr/lib/alternc/du.pl /var/alternc/mail/".substr($info[$i]["mail"][0],0,1)."/".str_replace("@","_",$info[$i]["mail"][0])); 
    118121        $size=$size*1024; 
     122        */ 
     123        $size=0; 
    119124      } else { 
    120125        $size=0; 
     
    218223   */ 
    219224  function add_wrapper($login,$domain,$command,$type) { 
    220     global $err; 
     225    global $err,$cuid; 
    221226    if (!$this->_connectldap()) { 
    222227      $err->raise("mail",1); 
     
    227232      return false; 
    228233    } 
    229     $res=array("mail" => $login."@".$domain, "uid" => $this->uid, "type" => $type, "objectclass" => "mail", "pop" => "0", "account"=>$login."_".$domain ); 
     234    $res=array("mail" => $login."@".$domain, "uid" => $cuid, "type" => $type, "objectclass" => "mail", "pop" => "0", "account"=>$login."_".$domain ); 
    230235    if (!ldap_add($this->ds,"mail=".$res["mail"].",dc=domains,".$this->ldap["basedn"],$res)) { 
    231236      $err->raise("mail",5,ldap_error($this->ds)); 
     
    304309   */ 
    305310  function put_mail_details($mail,$pop,$pass,$alias) { 
    306     global $err; 
     311    global $err,$cuid; 
    307312    $err->log("mail","put_mail_details",$mail); 
    308313    $account=array(); 
     
    355360    } 
    356361    if ($pop) $pop="1"; else $pop="0"; 
    357     $res=array("mail" => $mail."@".$dom, "uid" => $this->uid, "type" => "mail", "objectclass" => "mail", "pop"=> $pop); 
     362    $res=array("mail" => $mail."@".$dom, "uid" => $cuid, "type" => "mail", "objectclass" => "mail", "pop"=> $pop); 
    358363    $res["account"]=$account; 
    359364    //modification du mail dans ldap-domains 
     
    389394   */ 
    390395  function add_mail($dom,$mail,$pop,$pass,$alias) { 
    391     global $quota,$err; 
     396    global $quota,$err,$cuid; 
    392397    $err->log("mail","add_mail",$dom."/".$mail); 
    393398    $account=array(); 
     
    446451    } 
    447452    if ($pop!="1" && $pop!="0") $pop="0"; 
    448     $res=array("mail" => $mail."@".$dom, "uid" => $this->uid, "type" => "mail", "objectclass" => "mail", "pop" => $pop); 
     453    $res=array("mail" => $mail."@".$dom, "uid" => $cuid, "type" => "mail", "objectclass" => "mail", "pop" => $pop); 
    449454    $res["account"]=$account; 
    450455    /* QuotaCheck */ 
     
    512517   */ 
    513518  function _createpop($mail,$dom,$pass) { 
    514     global $err; 
     519    global $err,$cuid; 
    515520    $err->log("mail","_createpop",$mail."@".$dom); 
    516521    $m=substr($mail,0,1); 
     
    523528    $res=array( 
    524529               "uid" => $mail."_".$dom, 
    525                "gidnumber" => $this->uid, 
     530               "gidnumber" => $cuid, 
    526531               "uidnumber" => 33, 
    527532               "objectclass" => array("posixAccount","shadowAccount"), 
     
    529534               "gecos" => $gecos, 
    530535               "status" => "y", 
    531                "userpassword" => "{CRYPT}".$this->_md5cr($pass) 
     536               "userpassword" => "{CRYPT}"._md5cr($pass) 
    532537               ); 
    533538    @ldap_add($this->ds,"uid=".$mail."_".$dom.",dc=users,".$this->ldap["basedn"],$res); 
     
    535540    $res=array( 
    536541               "uid" => $mail."@".$dom, 
    537                "gidnumber" => $this->uid, 
     542               "gidnumber" => $cuid, 
    538543               "uidnumber" => 33, 
    539544               "objectclass" => array("posixAccount","shadowAccount"), 
     
    541546               "gecos" => $gecos, 
    542547               "status" => "y", 
    543                "userpassword" => "{CRYPT}".$this->_md5cr($pass) 
     548               "userpassword" => "{CRYPT}"._md5cr($pass) 
    544549               ); 
    545550    if (!ldap_add($this->ds,"uid=".$mail."@".$dom.",dc=users,".$this->ldap["basedn"],$res)) { 
     
    563568        return false; 
    564569      } else { 
    565         exec("/usr/lib/alternc/mail_add ".$mail."_".$dom." ".$this->uid); 
     570        exec("/usr/lib/alternc/mail_add ".$mail."_".$dom." ".$cuid); 
    566571        exec("/bin/echo ".escapeshellarg($pass)." | /usr/sbin/saslpasswd -u postfix -c -p ".$mail."@".$dom); 
    567572        exec("/bin/echo ".escapeshellarg($pass)." | /usr/sbin/saslpasswd -u postfix -c -p ".$mail."_".$dom); 
     
    580585   */ 
    581586  function _updatepop($mail,$dom,$pass) { 
    582     global $err; 
     587    global $err,$cuid; 
    583588    $err->log("mail","_updatepop",$mail."@".$dom); 
    584589    $m=substr($mail,0,1); 
     
    586591    $res=array( 
    587592               "uid" => $mail."_".$dom, 
    588                "gidnumber" => $this->uid, 
     593               "gidnumber" => $cuid, 
    589594               "uidnumber" => 33, 
    590595               "objectclass" => array("posixAccount","shadowAccount"), 
     
    592597               "gecos" => $mail, 
    593598               "status" => "y", 
    594                "userpassword" => "{CRYPT}".$this->_md5cr($pass) 
     599               "userpassword" => "{CRYPT}"._md5cr($pass) 
    595600               ); 
    596601    @ldap_modify($this->ds,"uid=".$mail."_".$dom.",dc=users,".$this->ldap["basedn"],$res); 
    597602    $res=array( 
    598603               "uid" => $mail."@".$dom, 
    599                "gidnumber" => $this->uid, 
     604               "gidnumber" => $cuid, 
    600605               "uidnumber" => 33, 
    601606               "objectclass" => array("posixAccount","shadowAccount"), 
     
    603608               "gecos" => $mail, 
    604609               "status" => "y", 
    605                "userpassword" => "{CRYPT}".$this->_md5cr($pass) 
     610               "userpassword" => "{CRYPT}"._md5cr($pass) 
    606611               ); 
    607612    if (!ldap_modify($this->ds,"uid=".$mail."@".$dom.",dc=users,".$this->ldap["basedn"],$res)) { 
     
    705710   * @return boolean TRUE si le domaine a bien été créé, FALSE si une erreur s'est produite. 
    706711   * @access private 
     712   * TODO : ne créer les entrées que si le MX est à true ! (déplacer a alternc_add_mx_domain 
    707713   */ 
    708714  function alternc_add_domain($dom) { 
    709     global $err; 
     715    global $err,$cuid; 
    710716    $err->log("mail","add_dom",$dom); 
    711717    if (!$this->_connectldap()) { 
     
    719725      return false; 
    720726    } 
    721     $res=array("mail" => $dom, "uid" => $this->uid, "type" => "domain", "objectclass" => "mail", "account"=> $dom); 
     727    $res=array("mail" => $dom, "uid" => $cuid, "type" => "domain", "objectclass" => "mail", "account"=> $dom); 
    722728    if (!ldap_add($this->ds,"mail=$dom,dc=domains,".$this->ldap["basedn"],$res)) { 
    723729      $err->raise("mail",5,ldap_error($this->ds)); 
     
    730736  function alternc_quota_check($id=-1) { 
    731737    global $quota,$err; 
    732     $err->log("mail","checkquota"); 
    733     if ($id==-1) $id=$this->uid; 
    734     if (!$this->_connectldap()) { 
    735       $err->raise("mail",1); 
    736       return false; 
    737     } 
    738     $sr=ldap_search($this->ds,"dc=domains,".$this->ldap["basedn"],"(&(uid=".$this->uid.")(type=mail))",array("")); 
    739     $info = ldap_get_entries($this->ds, $sr); 
    740     $quota->setquota("mail",$info[count],1,$id);   
    741  
     738    if ($id==-1) $id=$cuid; 
    742739    return true; 
    743740  } 
     
    771768  } 
    772769 
    773   /* ----------------------------------------------------------------- */ 
    774   /** Crypte un mot de passe en clair en MD5 avec un salt aléatoire 
    775    * @param string $pass Mot de passe à crypter (max 32 caractères) 
    776    * @return string Retourne le mot de passe crypté 
    777    * @access private 
    778    */ 
    779   function _md5cr($pass) { 
    780     $salt="";     //generate a salt using characters [A-Z][a-z][0-9]./ 
    781     $chars="./0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
    782     for ($i=0;$i<16;$i++) { 
    783       $salt.=substr($chars,(mt_rand(0,strlen($chars))),1); 
    784     } 
    785     return crypt($pass,"$1$".$salt); 
    786     /* " */ 
    787   } 
    788  
    789770} /* Class m_mail */ 
    790771 
  • bureau/class/m_mem.php

    r125 r222  
    11<?php 
    22/* 
    3  $Id: m_mem.php,v 1.7 2003/07/24 07:44:11 root Exp $ 
     3 $Id: m_mem.php,v 1.8 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 LICENSE 
     
    3535class m_mem { 
    3636 
    37   /** Membre dont on gère les domaines */ 
    38   var $uid=0; 
    39  
     37  /** Original uid for the temporary uid swapping (for administrators) */ 
     38  var $olduid=0; 
     39   
    4040  /** Tableau contenant les champs de la table "membres" du membre courant 
    4141   * Ce tableau est utilisable globalement par toutes les classes filles. 
     
    5252   * Constructeur 
    5353   */ 
    54   function m_mem($membre=0) { 
    55     $this->uid=$membre; 
     54  function m_mem() { 
    5655  } 
    5756 
     
    7372   */ 
    7473  function login($username,$password) { 
    75     global $db,$session,$err; 
     74    global $db,$session,$err,$cuid; 
    7675    $err->log("mem","login",$username); 
    7776    //    $username=addslashes($username); 
     
    8483    } 
    8584    $db->next_record(); 
    86     if ($db->f("pass")!=$password) { 
    87       $db->query("UPDATE membres SET lastfail=lastfail+1 WHERE uid=".$db->f("uid").";"); 
     85    if (_md5cr($password,$db->f("pass"))!=$db->f("pass")) { 
     86      $db->query("UPDATE membres SET lastfail=lastfail+1 WHERE uid='".$db->f("uid")."';"); 
    8887      $err->raise("mem",1); 
    8988      return false; 
     
    9493    } 
    9594    $this->user=$db->Record; 
    96     $this->uid=$db->f("uid"); 
     95    $cuid=$db->f("uid"); 
    9796    $ip=getenv("REMOTE_ADDR"); 
    9897    /* Fermeture des sessions de cet utilisateur : */ 
    99     //  $db->query("delete from sessions where uid=".$this->uid.";"); 
     98    //  $db->query("delete from sessions where uid='".$this->uid."';"); 
    10099    /* Ouverture de la session : */ 
    101100    $session=md5(uniqid(mt_rand())); 
    102     $db->query("insert into sessions (sid,ip,uid) values ('$session',INET_ATON('$ip'),".$this->uid.");"); 
     101    $db->query("insert into sessions (sid,ip,uid) values ('$session',INET_ATON('$ip'),'$cuid');"); 
    103102    setcookie("session",$session,0,"/"); 
    104103    $err->error=0; 
    105104    /* Remplissage de $local */ 
    106     $db->query("SELECT * FROM local WHERE uid=".$this->uid.";"); 
     105    $db->query("SELECT * FROM local WHERE uid='$cuid';"); 
    107106    if ($db->num_rows()) { 
    108107      $db->next_record(); 
     
    113112 
    114113  /* ----------------------------------------------------------------- */ 
     114  /** Démare une session pour username/password sur le bureau depuis l'admin 
     115   * ne pas confondre avec su : setid permet de se CONNECTER a un compte (definitivement) 
     116   * tandis que su permet de changer de compte pour quelques commandes (del_user, add_user ...) 
     117   * et permet de revenir avec unsu. 
     118   * @param integer $id uid de l'utilisateur sur lequel l'admin se connecte. 
     119   * @return boolean TRUE si l'utilisateur a été connecté avec succès, FALSE sinon. 
     120   */ 
     121  function setid($id) { 
     122    global $db,$session,$err,$cuid; 
     123    $err->log("mem","setid",$username); 
     124    $db->query("select * from membres where uid='$id';"); 
     125    if ($db->num_rows()==0) { 
     126      $err->raise("mem",1); 
     127      return false; 
     128    } 
     129    $db->next_record(); 
     130 
     131    $this->user=$db->Record; 
     132    $cuid=$db->f("uid"); 
     133    $ip=getenv("REMOTE_ADDR"); 
     134    $session=md5(uniqid(mt_rand())); 
     135    $db->query("insert into sessions (sid,ip,uid) values ('$session',INET_ATON('$ip'),'$cuid');"); 
     136    setcookie("session",$session,0,"/"); 
     137    $err->error=0; 
     138    /* Remplissage de $local */ 
     139    $db->query("SELECT * FROM local WHERE uid='$cuid';"); 
     140    if ($db->num_rows()) { 
     141      $db->next_record(); 
     142      $this->local=$db->Record; 
     143    } 
     144    return true; 
     145  } 
     146 
     147  /* ----------------------------------------------------------------- */ 
    115148  /** Suite à la connexion de l'utilisateur, réinitialise ses paramètres de dernière connexion 
    116149   */ 
    117150  function resetlast() { 
    118     global $db; 
    119     $db->query("UPDATE membres SET lastlogin=NOW(), lastfail=0, lastip='".getenv("REMOTE_HOST")."' WHERE uid=".$this->user["uid"].";"); 
     151    global $db,$cuid; 
     152    $db->query("UPDATE membres SET lastlogin=NOW(), lastfail=0, lastip='".getenv("REMOTE_HOST")."' WHERE uid='$cuid';"); 
    120153  } 
    121154 
     
    131164   */ 
    132165  function checkid() { 
    133     global $db,$err,$session,$username,$password; 
     166    global $db,$err,$session,$username,$password,$cuid; 
    134167    if ($username && $password) { 
    135168      return $this->login($username,$password); 
     
    151184      return false; 
    152185    } 
    153     $this->uid=$db->f("uid"); 
    154     $db->query("select * from membres where uid=".$this->uid.";"); 
     186    $cuid=$db->f("uid"); 
     187    $db->query("select * from membres where uid='$cuid';"); 
    155188    $db->next_record(); 
    156189    $this->user=$db->Record; 
    157190    $err->error=0; 
    158191    /* Remplissage de $local */ 
    159     $db->query("SELECT * FROM local WHERE uid=".$this->uid.";"); 
     192    $db->query("SELECT * FROM local WHERE uid='$cuid';"); 
    160193    if ($db->num_rows()) { 
    161194      $db->next_record(); 
     
    166199 
    167200  /* ----------------------------------------------------------------- */ 
    168   /** Change l'identité d'un utilisateur. 
    169    * Note : ne tiens pas compte du paramètre uid. 
     201  /** Change l'identité d'un utilisateur temporairement. 
    170202   * @global string $uid Utilisateur dont on prends l'identité 
    171203   * @return TRUE si la session est correcte, FALSE sinon. 
    172204   */ 
    173205  function su($uid) { 
    174     global $db,$err; 
    175     $err->log("mem","su",$uid); 
     206    global $cuid,$db; 
     207    if (!$this->olduid) 
     208        $this->olduid=$cuid; 
    176209    $db->query("select * from membres where uid='$uid';"); 
    177210    if ($db->num_rows()==0) { 
     
    181214    $db->next_record(); 
    182215    $this->user=$db->Record; 
    183     $this->uid=$db->f("uid"); 
    184     $ip=getenv("REMOTE_ADDR"); 
    185     /* Fermeture des sessions de cet utilisateur : */ 
    186     //  $db->query("delete from sessions where uid=".$this->uid.";"); 
    187     $db->query("SELECT * FROM local WHERE uid=".$this->uid.";"); 
    188     if ($db->num_rows()) { 
    189       $db->next_record(); 
    190       $this->local=$db->Record; 
    191     } 
    192     return true; 
    193   } 
     216    $cuid=$db->f("uid"); 
     217    return true; 
     218  } 
     219 
     220  /* ----------------------------------------------------------------- */ 
     221  /** Retourne a l'identite d'origine de l'utilisateur apres su. 
     222   * @return TRUE si la session est correcte, FALSE sinon. 
     223   */ 
     224  function unsu() { 
     225    global $cuid; 
     226    if (!$this->olduid) 
     227        return false; 
     228    $this->su($this->olduid); 
     229    $this->olduid=0; 
     230    return true; 
     231  } 
     232 
    194233 
    195234  /* ----------------------------------------------------------------- */ 
     
    198237   */ 
    199238  function del_session() { 
    200     global $db,$session,$user,$err; 
     239    global $db,$session,$user,$err,$cuid; 
    201240    $err->log("mem","del_session"); 
    202241    $session=addslashes($session); 
     
    221260      return false; 
    222261    } 
    223     $this->uid=$db->f("uid"); 
     262    $cuid=$db->f("uid"); 
    224263    $db->query("delete from sessions where sid='$session';"); 
    225264    $err->error=0; 
     
    235274   */ 
    236275  function passwd($oldpass,$newpass,$newpass2) { 
    237     global $db,$err; 
     276    global $db,$err,$cuid; 
    238277    $err->log("mem","passwd"); 
    239278    $oldpass=stripslashes($oldpass); 
     
    244283      return false; 
    245284    } 
    246     if ($this->user["pass"]!=$oldpass) { 
     285    if ($this->user["pass"]!=_md5cr($oldpass,$this->user["pass"])) { 
    247286      $err->raise("mem",6); 
    248287      return false; 
     
    256295      return false; 
    257296    } 
    258     $newpass=addslashes($newpass); 
    259     $db->query("UPDATE membres SET pass='$newpass' WHERE uid=".$this->uid.";"); 
     297    $newpass=_md5cr($newpass); 
     298    $db->query("UPDATE membres SET pass='$newpass' WHERE uid='$cuid';"); 
    260299    $err->error=0; 
    261300    return true; 
     
    268307   */ 
    269308  function adminpref($admlist) { 
    270     global $db,$err; 
     309    global $db,$err,$cuid; 
    271310    $err->log("mem","admlist"); 
    272311    if (!$this->user["su"]) { 
     
    274313      return false; 
    275314    } 
    276     $db->query("UPDATE membres SET admlist='$admlist' WHERE uid=".$this->uid.";"); 
     315    $db->query("UPDATE membres SET admlist='$admlist' WHERE uid='$cuid';"); 
    277316    $err->error=0; 
    278317    return true; 
     
    283322   * <b>Note : </b>On ne peut demander le mot de passe qu'une seule fois par jour. 
    284323   * TODO : Translate this mail into the localization program. 
     324   * TODO : Check this function's ! 
    285325   * @return boolean TRUE si le mot de passe a été envoyé avec succès, FALSE sinon. 
    286326   */ 
    287   function send_pass() { 
     327  function send_pass($login) { 
    288328    global $err,$db,$L_HOSTING,$L_FQDN; 
    289329    $err->log("mem","send_pass"); 
    290     $uid=$this->uid; 
    291     $db->query("SELECT * FROM membres WHERE uid='$uid';"); 
     330    $db->query("SELECT * FROM membres WHERE login='$login';"); 
    292331    if (!$db->num_rows()) { 
    293332      $err->raise("mem",2); 
     
    301340    $txt="Bonjour, 
    302341Il semblerait que vous ayez demandé à recevoir le mot de passe du 
    303 compte ".$db->f("login")." sur $L_HOSTING 
     342compte ".$login." sur $L_HOSTING 
    304343Voici donc le nom d'utilisateur et le mot de passe qui vous 
    305344permettront de rentrer sur le bureau virtuel : 
     
    321360"; 
    322361    mail($db->f("mail"),"Votre mot de passe sur $L_HOSTING",$txt,"From: root@$L_FQDN\nReply-to: root@$L_FQDN"); 
    323     $db->query("UPDATE membres SET lastaskpass=".time()." WHERE uid='$uid';"); 
     362    $db->query("UPDATE membres SET lastaskpass=".time()." WHERE login='$login';"); 
    324363    return true; 
    325364  } 
     
    332371   */ 
    333372  function ChangeMail1($newmail) { 
    334     global $err,$db,$L_HOSTING,$L_FQDN; 
     373    global $err,$db,$L_HOSTING,$L_FQDN,$cuid; 
    335374    $err->log("mem","changemail1",$newmail); 
    336     $uid=$this->uid; 
    337     $db->query("SELECT * FROM membres WHERE uid='$uid';"); 
     375    $db->query("SELECT * FROM membres WHERE uid='$cuid';"); 
    338376    if (!$db->num_rows()) { 
    339377      $err->raise("mem",2); 
     
    366404    mail($newmail,"Changement d'email sur $L_HOSTING",$txt,"From: root@$L_FQDN\nReply-to: root@$L_FQDN"); 
    367405    // Supprime les demandes précédentes de ce compte ! 
    368     $db->query("DELETE FROM chgmail WHERE uid='$uid';"); 
    369     $db->query("INSERT INTO chgmail (cookie,ckey,uid,mail,ts) VALUES ('$COOKIE','$KEY','$uid','$newmail',".time().");"); 
     406    $db->query("DELETE FROM chgmail WHERE uid='$cuid';"); 
     407    $db->query("INSERT INTO chgmail (cookie,ckey,uid,mail,ts) VALUES ('$COOKIE','$KEY','$cuid','$newmail',".time().");"); 
    370408    // Supprime les cookies de la veille :) 
    371409    $lts=time()-86400; 
    372     $db->query("DELETE FROM chgmail WHERE ts<$lts;"); 
     410    $db->query("DELETE FROM chgmail WHERE ts<'$lts';"); 
    373411    return $KEY; 
    374412  } 
     
    397435      // Supprime les cookies de la veille :) 
    398436      $lts=time()-86400; 
    399       $db->query("DELETE FROM chgmail WHERE ts<$lts;"); 
     437      $db->query("DELETE FROM chgmail WHERE ts<'$lts';"); 
    400438      return true; 
    401439    } 
     
    406444     */ 
    407445    function set_help_param($show) { 
    408       global $db,$err; 
     446      global $db,$err,$cuid; 
    409447      $err->log("mem","set_help_param",$show); 
    410       $db->query("UPDATE membres SET show_help='$show' WHERE uid=".$this->uid.";"); 
     448      $db->query("UPDATE membres SET show_help='$show' WHERE uid='$cuid';"); 
    411449    } 
    412450 
  • bureau/class/m_mysql.php

    r167 r222  
    11<?php 
    22/* 
    3  $Id: m_mysql.php,v 1.13 2003/12/12 09:21:36 guillaume Exp $ 
     3 $Id: m_mysql.php,v 1.14 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    3939class m_mysql { 
    4040 
    41   /** Membre dont on gère les bases de données */ 
    42   var $uid=0; 
    43  
    44   var $alternc_quota_name="mysql"; 
    45  
    4641  var $server="localhost"; 
    4742 
     
    5045  * m_mysql([$mid]) Constructeur de la classe m_mysql, initialise le membre concerne 
    5146  */ 
    52   function m_mysql($membre=0) { 
    53     $this->uid=$membre; 
     47  function m_mysql() { 
     48  } 
     49 
     50  /* ----------------------------------------------------------------- */ 
     51  /** 
     52   * Quota name 
     53   */ 
     54  function alternc_quota_names() { 
     55    return "mysql"; 
    5456  } 
    5557 
     
    6264   *  retourne false si l'utilisateur n'a aucune base de données 
    6365   */ 
    64   function get_dblist($uid=0) { 
    65     global $db,$err,$bro; 
    66     if (!$uid) $uid=$this->uid; 
     66  function get_dblist() { 
     67    global $db,$err,$bro,$cuid; 
    6768    $err->log("mysql","get_dblist"); 
    68     $db->query("SELECT pass,db, bck_mode, bck_dir FROM db WHERE uid='$uid';"); 
     69    $db->query("SELECT pass,db, bck_mode, bck_dir FROM db WHERE uid='$cuid';"); 
    6970    if (!$db->num_rows()) { 
    7071      $err->raise("mysql",11); 
     
    9192   */ 
    9293  function get_mysql_details($dbn) { 
    93     global $db,$err,$bro,$mem; 
     94    global $db,$err,$bro,$mem,$cuid; 
    9495    $root="/var/alternc/html/".substr($mem->user["login"],0,1)."/".$mem->user["login"]; 
    9596    $err->log("mysql","get_mysql_details"); 
    9697    $dbname=$mem->user["login"].($dbn?"_":"").$dbn; 
    97     $db->query("SELECT login,pass,db, bck_mode, bck_gzip, bck_dir, bck_history FROM db WHERE uid=".$this->uid." AND db='$dbname';"); 
     98    $db->query("SELECT login,pass,db, bck_mode, bck_gzip, bck_dir, bck_history FROM db WHERE uid='$cuid' AND db='$dbname';"); 
    9899    if (!$db->num_rows()) { 
    99100      $err->raise("mysql",4); 
     
    115116   */ 
    116117  function add_db($dbn) { 
    117     global $db,$err,$quota,$mem; 
     118    global $db,$err,$quota,$mem,$cuid; 
    118119    $err->log("mysql","add_db",$dbn); 
    119120    if (!$quota->cancreate("mysql")) { 
     
    132133    } 
    133134    // find the login/pass for this user :  
    134     $db->query("SELECT login,pass FROM db WHERE uid='".$this->uid."' LIMIT 0,1;"); 
     135    $db->query("SELECT login,pass FROM db WHERE uid='$cuid' LIMIT 0,1;"); 
    135136    if (!$db->num_rows()) { 
    136137      $lo=$mem->user["login"]; 
     
    142143    } 
    143144    // Ok, database does not exist, quota is ok and dbname is compliant. Let's proceed 
    144     $db->query("INSERT INTO db (uid,login,pass,db,bck_mode) VALUES ('".$this->uid."','$lo','$pa','$dbname',0);"); 
     145    $db->query("INSERT INTO db (uid,login,pass,db,bck_mode) VALUES ('$cuid','$lo','$pa','$dbname',0);"); 
    145146    $db->query("INSERT INTO mysql.db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Grant_priv, References_priv, Index_priv, Alter_priv) VALUES ('localhost','$dbname','$lo','Y','Y','Y','Y','Y','Y','N','Y','Y','Y');"); 
    146     $db->query("CREATE DATABASE `$dbname;`"); 
    147     exec("/usr/lib/alternc/db_create ".$this->uid." /var/alternc/db/$dbname"); 
     147    $db->query("INSERT INTO mysql.db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Grant_priv, References_priv, Index_priv, Alter_priv) VALUES ('%','$dbname','$lo','Y','Y','Y','Y','Y','Y','N','Y','Y','Y');"); 
     148    $db->query("CREATE DATABASE $dbname;"); 
     149    exec("/usr/lib/alternc/db_create $cuid /var/alternc/db/$dbname"); 
    148150    $db->query("FLUSH PRIVILEGES;"); 
    149151    $quota->inc("mysql"); 
     
    158160   *  an error occured, such as db does not exist. 
    159161   */ 
    160   function del_db($dbn,$uid=0) { 
    161     global $db,$err,$quota,$mem; 
    162     if ($uid) { 
    163       $db->query("SELECT login FROM membres WHERE uid='$uid';"); 
    164       $db->next_record(); 
    165       $login=$db->f("login"); 
    166     } else { 
    167       $uid=$this->uid; 
    168       $login=$mem->user["login"]; 
    169     } 
     162  function del_db($dbn) { 
     163    global $db,$err,$quota,$mem,$cuid; 
     164    $login=$mem->user["login"]; 
    170165    $err->log("mysql","del_db",$dbn); 
    171166    if (!ereg("^[0-9a-z]*$",$dbn)) { 
     
    173168      return false; 
    174169    } 
    175     $dbname=$login.($dbn?"_":"").$dbn; 
     170    $dbname=$mem->user["login"].($dbn?"_":"").$dbn; 
    176171    $db->query("SELECT * FROM db WHERE db='$dbname';"); 
    177172    if (!$db->num_rows()) { 
     
    180175    } 
    181176    // Ok, database exists and dbname is compliant. Let's proceed 
    182     $db->query("DELETE FROM db WHERE uid='$uid' AND db='$dbname';"); 
     177    $db->query("DELETE FROM db WHERE uid='$cuid' AND db='$dbname';"); 
    183178    $db->query("DELETE FROM mysql.db WHERE db='$dbname';"); 
    184     $db->query("DROP DATABASE `".$dbname."`;"); 
    185     $quota->dec("mysql",$uid); 
    186     $db->query("SELECT COUNT(*) AS cnt FROM db WHERE uid='$uid';"); 
     179    $db->query("DROP DATABASE $dbname;"); 
     180    $quota->dec("mysql"); 
     181    $db->query("SELECT COUNT(*) AS cnt FROM db WHERE uid='$cuid';"); 
    187182    $db->next_record(); 
    188183    if ($db->f("cnt")==0) { 
    189       $db->query("DELETE FROM mysql.user WHERE User='$login';"); 
     184      $db->query("DELETE FROM mysql.user WHERE User='".$mem->user["login"]."';"); 
    190185    } 
    191186    $db->query("FLUSH PRIVILEGES;"); 
     
    203198   */ 
    204199  function put_mysql_backup($dbn,$bck_mode,$bck_history,$bck_gzip,$bck_dir) { 
    205     global $db,$err,$mem,$bro; 
     200    global $db,$err,$mem,$bro,$cuid; 
    206201    $err->log("mysql","put_mysql_backup"); 
    207202    if (!ereg("^[0-9a-z]*$",$dbn)) { 
     
    210205    } 
    211206    $dbname=$mem->user["login"].($dbn?"_":"").$dbn; 
    212     $db->query("SELECT * FROM db WHERE uid=".$this->uid." AND db='$dbname';"); 
     207    $db->query("SELECT * FROM db WHERE uid='$cuid' AND db='$dbname';"); 
    213208    if (!$db->num_rows()) { 
    214209      $err->raise("mysql",4); 
     
    233228      return false; 
    234229    } 
    235     $db->query("UPDATE db SET bck_mode=$bck_mode, bck_history=$bck_history, bck_gzip=$bck_gzip, bck_dir='$bck_dir' WHERE uid=".$this->uid." AND db='$dbname';"); 
     230    $db->query("UPDATE db SET bck_mode='$bck_mode', bck_history='$bck_history', bck_gzip='$bck_gzip', bck_dir='$bck_dir' WHERE uid='$cuid' AND db='$dbname';"); 
    236231    return true; 
    237232  } 
     
    243238   */ 
    244239  function put_mysql_details($password) { 
    245     global $db,$err,$mem; 
     240    global $db,$err,$mem,$cuid; 
    246241    $err->log("mysql","put_mysql_details"); 
    247     $db->query("SELECT * FROM db WHERE uid=".$this->uid.";"); 
     242    $db->query("SELECT * FROM db WHERE uid='$cuid';"); 
    248243    if (!$db->num_rows()) { 
    249244      $err->raise("mysql",7); 
     
    256251    $login=$mem->user["login"]; 
    257252    // Update all the "pass" fields for this user :  
    258     $db->query("UPDATE db SET pass='$password' WHERE uid=".$this->uid.";"); 
     253    $db->query("UPDATE db SET pass='$password' WHERE uid='$cuid';"); 
    259254    $db->query("UPDATE mysql.user SET password=PASSWORD('$password') WHERE User='$login';"); 
    260255    $db->query("FLUSH PRIVILEGES;"); 
     
    262257  } 
    263258 
    264   /* **************************************************************************** 
    265      new_mysql($password) Cree un nouveau compte mysql au membre 
    266      $password est le mot de passe (en clair) 
    267   *****************************************************************************/ 
     259  /* ----------------------------------------------------------------- */ 
     260  /** 
     261   * Create a new mysql account for this user 
     262   * @param string cleartext password for the new account 
     263   */ 
    268264  function new_mysql($password) { 
    269     global $db,$err,$mem,$quota; 
     265    global $db,$err,$mem,$quota,$cuid; 
    270266    $err->log("mysql","new_mysql"); 
    271267    if (strlen($password)>16) { 
     
    273269      return false; 
    274270    } 
    275     $db->query("SELECT * FROM db WHERE uid=".$this->uid.";"); 
     271    $db->query("SELECT * FROM db WHERE uid='$cuid';"); 
    276272    if ($db->num_rows()) { 
    277273      $err->raise("mysql",10); 
     
    280276    $login=$mem->user["login"]; 
    281277    // OK, creation now... 
    282     $db->query("INSERT INTO db (uid,login,pass,db) VALUES ('".$this->uid."','".$mem->user["login"]."','$password','".$mem->user["login"]."');"); 
     278    $db->query("INSERT INTO db (uid,login,pass,db) VALUES ('$cuid','".$mem->user["login"]."','$password','".$mem->user["login"]."');"); 
    283279    $db->query("INSERT INTO mysql.user (Host,User,Password) VALUES ('localhost','".$mem->user["login"]."',PASSWORD('$password'));"); 
     280    $db->query("INSERT INTO mysql.user (Host,User,Password) VALUES ('%','".$mem->user["login"]."',PASSWORD('$password'));"); 
    284281    $db->query("INSERT INTO mysql.db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Grant_priv, References_priv, Index_priv, Alter_priv) VALUES ('localhost','".$mem->user["login"]."','".$mem->user["login"]."','Y','Y','Y','Y','Y','Y','N','Y','Y','Y');"); 
    285     $db->query("CREATE DATABASE `".$mem->user["login"]."`;"); 
    286     exec("/usr/lib/alternc/db_create ".$this->uid." /var/alternc/db/".$mem->user["login"]); 
     282    $db->query("INSERT INTO mysql.db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Grant_priv, References_priv, Index_priv, Alter_priv) VALUES ('%','".$mem->user["login"]."','".$mem->user["login"]."','Y','Y','Y','Y','Y','Y','N','Y','Y','Y');"); 
     283    $db->query("CREATE DATABASE ".$mem->user["login"].";"); 
     284    exec("/usr/lib/alternc/db_create $cuid /var/alternc/db/".$mem->user["login"]); 
    287285    $db->query("FLUSH PRIVILEGES;"); 
    288286    $quota->inc("mysql"); 
     
    291289 
    292290 
     291  /* ----------------------------------------------------------------- */ 
     292  /** 
     293   * Restore a sql script on a user's database. 
     294   */ 
    293295  function restore($file,$stdout,$r) { 
    294     global $err,$bro,$mem; 
     296    global $err,$bro,$mem,$L_MYSQL_HOST; 
    295297    if (!($fi=$bro->convertabsolute($file,0))) { 
    296298      $err->raise("mysql",9); 
    297299    } 
    298300    if (substr($fi,-3)==".gz") { 
    299       $exe="/bin/gzip -d -c <\"$fi\" | /usr/bin/mysql -u".$r["login"]." -p".$r["pass"]." ".$r["db"]; 
    300     } else { 
    301       $exe="/usr/bin/mysql -u".$r["login"]." -p".$r["pass"]." ".$r["db"]." <".$fi; 
     301      $exe="/bin/gzip -d -c <\"$fi\" | /usr/bin/mysql -h".$L_MYSQL_HOST." -u".$r["login"]." -p".$r["pass"]." ".$r["db"]; 
     302    } else { 
     303      $exe="/usr/bin/mysql -h".$L_MYSQL_HOST." -u".$r["login"]." -p".$r["pass"]." ".$r["db"]." <".$fi; 
    302304    } 
    303305     
     
    316318  } 
    317319   
    318   function alternc_quota_check($id) { 
     320  /* ----------------------------------------------------------------- */ 
     321  /** 
     322   * AlternC's standard function that check a user's qutoa 
     323   */ 
     324  function alternc_quota_check() { 
    319325    global $err,$quota; 
    320326    $err->log("mysql","alternc_quota_check"); 
    321     $c=$this->get_dblist($id); 
     327    $c=$this->get_dblist(); 
    322328    if (is_array($c)) { 
    323       $quota->setquota("mysql",count($c),1,$id); 
    324     } else { 
    325       $quota->setquota("mysql",0,1,$id); 
    326     } 
    327     return true; 
    328   } 
    329  
    330   function alternc_del_member($id) { 
    331     global $db,$err; 
     329      $quota->setquota("mysql",count($c),1); 
     330    } else { 
     331      $quota->setquota("mysql",0,1); 
     332    } 
     333    return true; 
     334  } 
     335 
     336  /* ----------------------------------------------------------------- */ 
     337  /** 
     338   * AlternC's standard function that delete a member 
     339   */ 
     340  function alternc_del_member() { 
     341    global $db,$err,$cuid; 
    332342    $err->log("mysql","alternc_del_member"); 
    333     $c=$this->get_dblist($id); 
     343    $c=$this->get_dblist(); 
    334344    if (is_array($c)) { 
    335345      for($i=0;$i<count($c);$i++) { 
    336         $this->del_db($c[$i]["name"],$id); 
     346        $this->del_db($c[$i]["name"]); 
    337347      } 
    338348    } 
  • bureau/class/m_quota.php

    r96 r222  
    11<?php 
    22/* 
    3  $Id: m_quota.php,v 1.5 2003/06/09 20:19:32 root Exp $ 
     3 $Id: m_quota.php,v 1.6 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    4646class m_quota { 
    4747 
    48   var $uid=0;    /* Membre dont on souhaite gérer les quotas DISQUE DUR */ 
    49  
    5048  var $disk=Array(  /* Liste des ressources disque soumises a quota */ 
    5149                  "web"=>"web"); 
     
    5351  var $quotas; 
    5452 
    55   /***************************************************************************** 
    56                                                                                 m_quota([$uid]) Constructeur de la classe m_quota, initialise le membre 
    57   *****************************************************************************/ 
    58   function m_quota($membre=0) { 
    59     $this->uid=$membre; 
    60   } 
    61  
    62   /*****************************************************************************/ 
     53 
     54  /* ----------------------------------------------------------------- */ 
     55  /** 
     56   * Constructeur  
     57   */ 
     58  function m_quota() { 
     59  } 
     60 
     61  /* ----------------------------------------------------------------- */ 
     62  /** 
     63   * @Return true if the user can create a ressource (= is there any quota left ?) 
     64   */ 
    6365  function cancreate($ressource="") { 
    6466    $t=$this->getquota($ressource); 
     
    6668  } 
    6769  
    68   /** Retourne la liste des quotas possibles. **/ 
     70  /* ----------------------------------------------------------------- */ 
     71  /** 
     72   * @Return an array with the list of quota-managed services in the server 
     73   */ 
    6974  function qlist() { 
    7075    global $classes; 
     
    7580    } 
    7681    for($i=0;$i<count($classes);$i++) { 
    77       if ($GLOBALS[$classes[$i]]->alternc_quota_name) { 
    78         $qlist[$GLOBALS[$classes[$i]]->alternc_quota_name]=_("quota_".$GLOBALS[$classes[$i]]->alternc_quota_name); 
     82      if (method_exists($GLOBALS[$classes[$i]],"alternc_quota_names")) { 
     83        $res=$GLOBALS[$classes[$i]]->alternc_quota_names(); 
     84        if (is_array($res)) { 
     85          foreach($res as $k) { 
     86            $qlist[$k]=_("quota_".$k); 
     87          } 
     88        } else { 
     89          $qlist[$res]=_("quota_".$res); 
     90        } 
    7991      } 
    8092    } 
     
    8294  } 
    8395  
    84   /*****************************************************************************/ 
    85   function getquota($ressource="",$uid=-1) { 
    86     global $db,$err; 
     96  /* ----------------------------------------------------------------- */ 
     97  /** 
     98   * @param string ressource to get quota of 
     99   * @Return the quota used and total for this ressource (or for all ressource if unspecified) 
     100   */ 
     101  function getquota($ressource="") { 
     102    global $db,$err,$cuid; 
    87103    $err->log("quota","getquota",$ressource); 
    88     if ($uid==-1) $uid=$this->uid; 
    89     if (!is_array($this->quotas)) { /* First time, read the quotas */ 
    90       $db->query("select * from quotas where uid=$uid;"); 
    91       if ($db->num_rows()==0) { 
    92         return array("t"=>0, "u"=>0); 
    93       } else { 
    94         while ($db->next_record()) { 
    95           $this->quotas[$db->Record["name"]]=array("t"=>$db->Record["total"],"u"=>$db->Record["used"]); 
    96         } 
     104    $db->query("select * from quotas where uid='$cuid';"); 
     105    if ($db->num_rows()==0) { 
     106      return array("t"=>0, "u"=>0); 
     107    } else { 
     108      while ($db->next_record()) { 
     109        $this->quotas[$db->Record["name"]]=array("t"=>$db->Record["total"],"u"=>$db->Record["used"]); 
    97110      } 
    98111    } 
     
    100113    while (list($key,$val)=each($this->disk)) { 
    101114      $a=array(); 
    102       exec("/usr/lib/alternc/quota_get ".$uid." ".$val,$a); 
     115      exec("/usr/lib/alternc/quota_get ".$cuid." ".$val,$a); 
    103116      $this->quotas[$val]=array("t"=>$a[1],"u"=>$a[0]); 
    104117    } 
    105  
     118     
    106119    if ($ressource) { 
    107120      return $this->quotas[$ressource]; 
     
    110123    } 
    111124  } 
    112  
    113   /*****************************************************************************/ 
    114   function setquota($ressource,$size,$used=0,$uid=-1) { 
    115     global $err,$db; 
     125   
     126  /* ----------------------------------------------------------------- */ 
     127  /** 
     128   * @param string ressource to set quota of  
     129   * @param integer size of the quota (available or used) 
     130   * @param integer 0 for total quota, 1 for used quota 
     131   */ 
     132  function setquota($ressource,$size,$used=0) { 
     133    global $err,$db,$cuid; 
    116134    $err->log("quota","setquota",$ressource."/".$size); 
    117     if ($uid==-1) $uid=$this->uid; 
    118135    if (intval($size)==0) $size="0"; 
    119136    if ($this->disk[$ressource]) { 
    120       // C'est une ressource disque : exec 
    121       exec("/usr/lib/alternc/quota_edit $uid $size"); 
     137      // It's a disk resource, update it with shell cmd 
     138      exec("/usr/lib/alternc/quota_edit $cuid $size"); 
    122139      return true; 
    123140    } 
    124     // 1. on vérifie que ce quota existe pour le membre, sinon, on le crée avec 2 valeurs à 0. 
    125     $db->query("SELECT * FROM quotas WHERE uid=$uid AND name='$ressource'"); 
     141    // We check that this resurce exists for this client :  
     142    $db->query("SELECT * FROM quotas WHERE uid='$cuid' AND name='$ressource'"); 
    126143    if ($db->num_rows()) { 
    127       // Existe : on update 
    128144      if ($used) { 
    129         $db->query("UPDATE quotas SET used=$size WHERE uid=$uid AND name='$ressource';"); 
     145        $db->query("UPDATE quotas SET used='$size' WHERE uid='$cuid' AND name='$ressource';"); 
    130146      } else { 
    131         $db->query("UPDATE quotas SET total=$size WHERE uid=$uid AND name='$ressource';"); 
    132       } 
    133     } else { 
    134       // N'existe pas, on crée. 
     147        $db->query("UPDATE quotas SET total='$size' WHERE uid='$cuid' AND name='$ressource';"); 
     148      } 
     149    } else { 
    135150      if ($used) { 
    136         $db->query("INSERT INTO quotas (uid,name,used,total) VALUES ($uid,'$ressource',$size,0);"); 
     151        $db->query("INSERT INTO quotas (uid,name,used,total) VALUES ('$cuid','$ressource','$size',0);"); 
    137152      } else { 
    138         $db->query("INSERT INTO quotas (uid,name,used,total) VALUES ($uid,'$ressource',0,$size);"); 
     153        $db->query("INSERT INTO quotas (uid,name,used,total) VALUES ('$cuid','$ressource',0,'$size');"); 
    139154      } 
    140155    } 
     
    142157  } 
    143158 
    144   /*****************************************************************************/ 
     159  /* ----------------------------------------------------------------- */ 
     160  /** 
     161   * Increment the resource usage for the named resource 
     162   */ 
    145163  function inc($ressource) { 
    146     global $db,$err; 
     164    global $db,$err,$cuid; 
    147165    $err->log("quota","inc",$ressource); 
    148     // 1. on vérifie que ce quota existe pour le membre, sinon, on le crée avec 2 valeurs à 0. 
    149     $db->query("SELECT * FROM quotas WHERE uid=".$this->uid." AND name='$ressource'"); 
     166    $db->query("SELECT * FROM quotas WHERE uid='$cuid' AND name='$ressource'"); 
    150167    if ($db->num_rows()) { 
    151       // Existe : on update 
    152       $db->query("UPDATE quotas SET used=used+1 WHERE uid=".$this->uid." AND name='$ressource';"); 
    153     } else { 
    154       // N'Existe pas, on crée. 
    155       $db->query("INSERT INTO quotas (uid,name,used,total) VALUES (".$this->uid.",'$ressource',1,0);"); 
    156     } 
    157   } 
    158  
    159   /*****************************************************************************/ 
    160   function dec($ressource,$uid=0) { 
    161     global $db,$err; 
     168      $db->query("UPDATE quotas SET used=used+1 WHERE uid='$cuid' AND name='$ressource';"); 
     169    } else { 
     170      $db->query("INSERT INTO quotas (uid,name,used,total) VALUES ('$cuid','$ressource',1,0);"); 
     171    } 
     172  } 
     173 
     174  /* ----------------------------------------------------------------- */ 
     175  /** 
     176   * Decrement the resource usage for the named resource 
     177   */ 
     178  function dec($ressource) { 
     179    global $db,$err,$cuid; 
    162180    $err->log("quota","dec",$ressource); 
    163     if (!$uid) $uid=$this->uid; 
    164     // 1. on vérifie que ce quota existe pour le membre, sinon, on le crée avec 2 valeurs à 0. 
    165     $db->query("SELECT * FROM quotas WHERE uid='$uid' AND name='$ressource'"); 
     181    $db->query("SELECT * FROM quotas WHERE uid='$cuid' AND name='$ressource'"); 
    166182    if ($db->num_rows()) { 
    167       // Existe : on update 
    168       $db->query("UPDATE quotas SET used=used-1 WHERE uid='$uid' AND name='$ressource';"); 
    169     } else { 
    170       // N'Existe pas, on crée. 
    171       $db->query("INSERT INTO quotas (uid,name,used,total) VALUES ('$uid','$ressource',-1,0);"); 
    172     } 
    173   } 
    174  
    175   /*****************************************************************************/ 
    176   function checkquota($id=-1) { 
    177     global $err,$classes; 
     183      $db->query("UPDATE quotas SET used=used-1 WHERE uid='$cuid' AND name='$ressource';"); 
     184    } else { 
     185      // TODO : raise an error here ;) 
     186    } 
     187  } 
     188 
     189  /* ----------------------------------------------------------------- */ 
     190  /** 
     191   * Check a user's quota: call a function for each class. 
     192   */ 
     193  function checkquota() { 
     194    global $err,$classes,$cuid; 
    178195    $err->log("quota","checkquota",$id); 
    179     if ($id==-1) $id=$this->uid; 
    180     // Check quotas for all classes :  
    181196    for($i=0;$i<count($classes);$i++) { 
    182197      if (method_exists($GLOBALS[$classes[$i]],"alternc_quota_check")) { 
    183         $GLOBALS[$classes[$i]]->alternc_quota_check($id); 
     198        $GLOBALS[$classes[$i]]->alternc_quota_check(); 
    184199        } 
    185200      } 
    186201  } 
    187202 
    188   /*****************************************************************************/ 
    189   function delquotas($uid) { 
    190     global $db,$err; 
    191     $err->log("quota","delquota",$id); 
    192     $db->query("DELETE FROM  quotas WHERE  uid='$uid';"); 
     203  /* ----------------------------------------------------------------- */ 
     204  /** 
     205   * Erase all quota information about the user. 
     206   */ 
     207  function delquotas() { 
     208    global $db,$err,$cuid; 
     209    $err->log("quota","delquota"); 
     210    $db->query("DELETE FROM quotas WHERE uid='$cuid';"); 
    193211    return true; 
    194212  } 
    195213 
    196   /*****************************************************************************/ 
     214  /* ----------------------------------------------------------------- */ 
     215  /** 
     216   * Get the defaul quotas as an array 
     217   */ 
    197218  function getdefaults() { 
    198219    global $db; 
     
    208229  } 
    209230 
    210   /*****************************************************************************/ 
     231  /* ----------------------------------------------------------------- */ 
     232  /** 
     233   * Set the default quotas 
     234   * @param array array of quota key=>val 
     235   */ 
    211236  function setdefaults($newq) { 
    212237    global $db; 
     
    224249  } 
    225250   
    226   /*****************************************************************************/ 
    227   function addquotas($uid) { 
    228     global $db,$err; 
    229     $err->log("quota","addquota",$id); 
     251  /* ----------------------------------------------------------------- */ 
     252  /** 
     253   * Create default quotas entries for the user  
     254   */ 
     255  function addquotas() { 
     256    global $db,$err,$cuid; 
     257    $err->log("quota","addquota"); 
    230258    $ql=$this->qlist(); 
    231259    reset($ql); 
     
    239267          $tot=0; 
    240268        } 
    241         $db->query("INSERT INTO quotas(uid,name,total) VALUES('$uid','$key','$tot');"); 
     269        $db->query("INSERT INTO quotas(uid,name,total) VALUES('$cuid','$key','$tot');"); 
    242270      } 
    243271    } 
     
    251279        $tot=0; 
    252280      } 
    253       exec("/usr/lib/alternc/quota_edit $uid ".($tot)); 
     281      exec("/usr/lib/alternc/quota_edit $cuid ".($tot)); 
    254282    } 
    255283    return true; 
    256284  } 
    257285 
    258   function alternc_del_member($uid) { 
    259     $this->delquotas($uid); 
    260   } 
    261  
    262   function alternc_add_member($uid) { 
    263     $this->addquotas($uid); 
     286  /* ----------------------------------------------------------------- */ 
     287  /** 
     288   * AlternC's standard function called when a member is created 
     289   */ 
     290  function alternc_del_member() { 
     291    $this->delquotas(); 
     292  } 
     293 
     294  /* ----------------------------------------------------------------- */ 
     295  /** 
     296   * AlternC's standard function called when a member is deleted 
     297   */ 
     298  function alternc_add_member() { 
     299    $this->addquotas(); 
    264300  } 
    265301 
  • bureau/class/m_stats.php

    r157 r222  
    11<?php 
    22/* 
    3  $Id: m_stats.php,v 1.9 2003/10/09 00:07:21 root Exp $ 
     3 $Id: m_stats.php,v 1.10 2004/05/19 14:23:06 benjamin Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    4040class m_stats { 
    4141 
    42   /** Membre actuellement connecté */ 
    43   var $uid=0; 
    44  
    45   var $alternc_quota_name="stats"; 
    46   
    4742  /** Emplacement des fichiers de conf webalizer 
    4843   * @access private  
     
    6762   * Constructeur 
    6863   */ 
    69   function m_stats($membre=0) { 
    70     $this->uid=$membre; 
    71   } 
    72    
     64  function m_stats() { 
     65  } 
     66 
     67  /* ----------------------------------------------------------------- */ 
     68  /** 
     69   * Nom du quota 
     70   */ 
     71  function alternc_quota_names() { 
     72    return "stats"; 
     73  }  
     74 
    7375  /* ----------------------------------------------------------------- */ 
    7476  /** 
     
    8385   */ 
    8486  function get_list() { 
    85     global $db,$err; 
     87    global $db,$err,$cuid; 
    8688    $err->log("stats","get_list"); 
    8789    $r=array(); 
    88     $db->query("SELECT id, hostname, dir, lang FROM stats WHERE uid=".$this->uid." ORDER BY hostname;"); 
     90    $db->query("SELECT id, hostname, dir, lang FROM stats WHERE uid='$cuid' ORDER BY hostname;"); 
    8991    if ($db->num_rows()) { 
    9092      while ($db->next_record()) { 
     
    118120   */ 
    119121  function get_stats_details($id) { 
    120     global $db,$err; 
     122    global $db,$err,$cuid; 
    121123    $err->log("stats","get_stats_details",$id); 
    122124    $r=array(); 
    123     $db->query("SELECT id, hostname, dir, lang FROM stats WHERE uid=".$this->uid." AND id=$id;"); 
     125    $db->query("SELECT id, hostname, dir, lang FROM stats WHERE uid='$cuid' AND id='$id';"); 
    124126    if ($db->num_rows()) { 
    125127      $db->next_record(); 
     
    145147   */ 
    146148  function host_list() { 
    147     global $db,$err; 
     149    global $db,$err,$cuid; 
    148150    $r=array(); 
    149     $db->query("SELECT domaine,sub FROM sub_domaines WHERE compte=".$this->uid." ORDER BY domaine,sub;"); 
     151    $db->query("SELECT domaine,sub FROM sub_domaines WHERE compte='$cuid' ORDER BY domaine,sub;"); 
    150152    while ($db->next_record()) { 
    151153      if ($db->f("sub")) { 
     
    164166   */ 
    165167  function select_host_list($current) { 
    166     global $db,$err; 
    167168    $r=$this->host_list(); 
    168169    reset($r); 
     
    196197   */ 
    197198  function put_stats_details($id,$dir,$stlang) { 
    198     global $db,$err,$bro,$mem; 
     199    global $db,$err,$bro,$mem,$cuid; 
    199200    $err->log("stats","put_stats_details",$id); 
    200     $db->query("SELECT count(*) AS cnt FROM stats WHERE id=$id and uid=".$this->uid.";"); 
     201    $db->query("SELECT count(*) AS cnt FROM stats WHERE id='$id' and uid='$cuid';"); 
    201202    $db->next_record(); 
    202203    if (!$db->f("cnt")) { 
     
    215216    $lo=$mem->user["login"]; 
    216217    $l=substr($lo,0,1); 
    217     $db->query("UPDATE stats SET lang='$stlang', dir='/var/alternc/html/$l/$lo/$dir', uid=".$this->uid." WHERE id=$id;"); 
     218    $db->query("UPDATE stats SET lang='$stlang', dir='/var/alternc/html/$l/$lo/$dir', uid='$cuid' WHERE id='$id';"); 
    218219    $this->_createconf($id); 
    219220    return true; 
     
    227228   */ 
    228229  function delete_stats($id) { 
    229     global $db,$err,$quota; 
     230    global $db,$err,$quota,$cuid; 
    230231    $err->log("stats","delete_stats",$id); 
    231     $db->query("SELECT hostname FROM stats WHERE id=$id and uid=".$this->uid.";"); 
     232    $db->query("SELECT hostname FROM stats WHERE id='$id' and uid='$cuid';"); 
    232233    if (!$db->num_rows()) { 
    233234      $err->raise("stats",2); 
     
    236237    $db->next_record(); 
    237238    $this->_delconf($db->f("hostname")); 
    238     $db->query("DELETE FROM stats WHERE id=$id"); 
     239    $db->query("DELETE FROM stats WHERE id='$id'"); 
    239240    $quota->dec("stats"); 
    240241    return $name; 
     
    250251   */ 
    251252  function add_stats($hostname,$dir,$lang) { 
    252     global $db,$err,$quota,$bro,$mem; 
     253    global $db,$err,$quota,$bro,$mem,$cuid; 
    253254    $err->log("stats","add_stats",$hostname); 
    254255    $dir=$bro->convertabsolute($dir); 
     
    271272    if ($quota->cancreate("stats")) { 
    272273      $quota->inc("stats"); 
    273       $db->query("INSERT INTO stats (hostname,lang,dir,uid) VALUES ('$hostname','$lang','/var/alternc/html/$l/$lo/$dir',".$this->uid.")"); 
     274      $db->query("INSERT INTO stats (hostname,lang,dir,uid) VALUES ('$hostname','$lang','/var/alternc/html/$l/$lo/$dir','$cuid')"); 
    274275      $this->_createconf($db->lastid()); 
    275276      return true; 
     
    280281  } 
    281282 
    282   /* ----------------------------------------------------------------- */ 
    283   /**  
    284    * Fonction appellée par m_dom lorsqu'un domaine est supprimé. 
    285    * @param string $dom est le domaine à supprimer. 
    286    */ 
    287   function alternc_del_domain($dom) { 
    288     global $db,$quota,$err; 
    289     $err->log("stats","del_dom",$dom); 
    290     // on remonte les quotas ;) 
    291     $db=new DB_System(); 
    292     $db->query("SELECT * FROM stats WHERE uid=".$this->uid." AND hostname like '%$dom'"); 
     283  function alternc_del_member() { 
     284    global $db,$quota,$err,$cuid; 
     285    $err->log("stats","del_member"); 
     286    $db->query("SELECT * FROM stats WHERE uid='$cuid';"); 
    293287    $cnt=0; 
    294288    $t=array(); 
     
    297291      $t[]=$db->f("hostname"); 
    298292    } 
    299     $r=$quota->getquota("stats"); 
    300     $quota->setquota("stats",$r["u"]-$cnt,1); 
    301     // on détruit les jeux de stats associés au préfixe correspondant : 
     293    $db->query("DELETE FROM stats WHERE uid='$cuid';"); 
    302294    for($i=0;$i<cnt;$i++) { 
    303       $db->query("DELETE FROM stats WHERE uid=".$this->uid." AND hostname='".$t[$i]."';"); 
    304295      $this->_delconf($t[$i]); 
    305296    } 
    306     // Suppression des stats apache brutes :  
    307     $db->query("SELECT * FROM stats2 WHERE mid=".$this->uid." AND hostname like '%$dom'"); 
     297    $db->query("DELETE FROM stats2 WHERE mid='$cuid';"); 
     298    return true; 
     299  } 
     300 
     301  /* ----------------------------------------------------------------- */ 
     302  /**  
     303   * Fonction appellée par m_dom lorsqu'un domaine est supprimé. 
     304   * @param string $dom est le domaine à supprimer. 
     305   */ 
     306  function alternc_del_domain($dom) { 
     307    global $db,$quota,$err,$cuid; 
     308    $err->log("stats","del_dom",$dom); 
     309    // on remonte les quotas ;) 
     310    $db=new DB_System(); 
     311    $db->query("SELECT * FROM stats WHERE uid='$cuid' AND hostname like '%$dom'"); 
    308312    $cnt=0; 
    309313    $t=array(); 
     
    316320    // on détruit les jeux de stats associés au préfixe correspondant : 
    317321    for($i=0;$i<cnt;$i++) { 
    318       $db->query("DELETE FROM stats2 WHERE uid=".$this->uid." AND hostname='".$t[$i]."';"); 
     322      $db->query("DELETE FROM stats WHERE uid='$cuid' AND hostname='".$t[$i]."';"); 
     323      $this->_delconf($t[$i]); 
     324    } 
     325    // Suppression des stats apache brutes :  
     326    $db->query("SELECT * FROM stats2 WHERE mid='$cuid' AND hostname like '%$dom'"); 
     327    $cnt=0; 
     328    $t=array(); 
     329    while ($db->next_record()) { 
     330      $cnt++; 
     331      $t[]=$db->f("hostname"); 
     332    } 
     333    $r=$quota->getquota("stats"); 
     334    $quota->setquota("stats",$r["u"]-$cnt,1); 
     335    // on détruit les jeux de stats associés au préfixe correspondant : 
     336    for($i=0;$i<cnt;$i++) { 
     337      $db->query("DELETE FROM stats2 WHERE mid='$cuid' AND hostname='".$t[$i]."';"); 
    319338    } 
    320339    return true; 
     
    326345   * @param integer $id Numéro de l'utilisateur (facultatif) 
    327346   */ 
    328   function alternc_quota_check($id=-1) { 
    329     global $db,$err,$quota; 
     347  function alternc_quota_check() { 
     348    global $db,$err,$quota,$cuid; 
    330349    $err->log("stats","checkquota"); 
    331     if (!$id==-1) $id=$this->uid; 
    332     $db->query("SELECT COUNT(*) AS cnt FROM stats WHERE uid=$id"); 
     350    $db->query("SELECT COUNT(*) AS cnt FROM stats WHERE uid='$cuid'"); 
    333351    $db->next_record(); 
    334352    $ss=intval($db->f("cnt")); 
    335     $db->query("SELECT COUNT(*) AS cnt FROM stats2 WHERE mid=$id"); 
     353    $db->query("SELECT COUNT(*) AS cnt FROM stats2 WHERE mid='$cuid'"); 
    336354    $db->next_record(); 
    337355    $ss+=intval($db->f("cnt")); 
    338     $quota->setquota("stats",$ss,1,$id); 
     356    $quota->setquota("stats",$ss,1); 
    339357    return true; 
    340358  } 
     
    350368   */ 
    351369  function get_list_raw() { 
    352     global $db,$err; 
     370    global $db,$err,$cuid; 
    353371    $err->log("stats","get_list_raw"); 
    354372    $r=array(); 
    355     $db->query("SELECT id, hostname, folder FROM stats2 WHERE mid=".$this->uid." ORDER BY hostname;"); 
     373    $db->query("SELECT id, hostname, folder FROM stats2 WHERE mid='$cuid' ORDER BY hostname;"); 
    356374    if ($db->num_rows()) { 
    357375      while ($db->next_record()) { 
     
    383401   */ 
    384402  function get_stats_details_raw($id) { 
    385     global $db,$err; 
     403    global $db,$err,$cuid; 
    386404    $err->log("stats","get_stats_details_raw",$id); 
    387405    $r=array(); 
    388     $db->query("SELECT id, hostname, folder FROM stats2 WHERE mid=".$this->uid." AND id=$id;"); 
     406    $db->query("SELECT id, hostname, folder FROM stats2 WHERE mid='$cuid' AND id='$id';"); 
    389407    if ($db->num_rows()) { 
    390408      $db->next_record(); 
     
    412430   */ 
    413431  function put_stats_details_raw($id,$folder) { 
    414     global $db,$err,$bro,$mem; 
     432    global $db,$err,$bro,$mem,$cuid; 
    415433    $err->log("stats","put_stats_details_raw",$id); 
    416     $db->query("SELECT count(*) AS cnt FROM stats2 WHERE id=$id and mid=".$this->uid.";"); 
     434    $db->query("SELECT count(*) AS cnt FROM stats2 WHERE id='$id' and mid='$cuid';"); 
    417435    $db->next_record(); 
    418436    if (!$db->f("cnt")) { 
     
    427445    $lo=$mem->user["login"]; 
    428446    $l=substr($lo,0,1); 
    429     $db->query("UPDATE stats2 SET folder='/var/alternc/html/$l/$lo/$folder', mid=".$this->uid." WHERE id=$id;"); 
     447    $db->query("UPDATE stats2 SET folder='/var/alternc/html/$l/$lo/$folder', mid='$cuid' WHERE id='$id';"); 
    430448    return true; 
    431449  } 
     
    438456   */ 
    439457  function delete_stats_raw($id) { 
    440     global $db,$err,$quota; 
     458    global $db,$err,$quota,$cuid; 
    441459    $err->log("stats","delete_stats_raw",$id); 
    442     $db->query("SELECT hostname FROM stats2 WHERE id=$id and mid=".$this->uid.";"); 
     460    $db->query("SELECT hostname FROM stats2 WHERE id='$id' and mid='$cuid';"); 
    443461    if (!$db->num_rows()) { 
    444462      $err->raise("stats",8); 
     
    446464    } 
    447465    $db->next_record(); 
    448     $db->query("DELETE FROM stats2 WHERE id=$id"); 
     466    $db->query("DELETE FROM stats2 WHERE id='$id'"); 
    449467    $quota->dec("stats"); 
    450468    return true; 
     
    459477   */ 
    460478  function add_stats_raw($hostname,$dir) { 
    461     global $db,$err,$quota,$bro,$mem; 
     479    global $db,$err,$quota,$bro,$mem,$cuid; 
    462480    $err->log("stats","add_stats_raw",$hostname); 
    463481    // TODO : utiliser le second param de convertabsolute pour simplification. 
     
    470488    if ($quota->cancreate("stats")) { 
    471489      $quota->inc("stats"); 
    472       $db->query("INSERT INTO stats2 (hostname,folder,mid) VALUES ('$hostname','/var/alternc/html/$l/$lo/$dir',".$this->uid.")"); 
     490      $db->query("INSERT INTO stats2 (hostname,folder,mid) VALUES ('$hostname','/var/alternc/html/$l/$lo/$dir','$cuid')"); 
    473491      return true; 
    474492    } else { 
     
    490508   * @access private 
    491509   */ 
    492   function _createconf($id) { 
    493     global $db,$err; 
     510  function _createconf($id,$nochk=0) { 
     511    global $db,$err,$cuid; 
    494512    $s=implode("",file($this->TEMPLATEFILE)); 
    495     $db->query("SELECT * FROM stats WHERE id=$id AND uid=".$this->uid.";"); 
     513    if ($nochk) { 
     514        $db->query("SELECT * FROM stats WHERE id='$id';"); 
     515    } else {  
     516        $db->query("SELECT * FROM stats WHERE id='$id' AND uid='$cuid';"); 
     517    } 
    496518    if (!$db->num_rows()) { 
    497519      $err->raise("stats",2); 
  • bureau/locales/en_US/LC_MESSAGES/mysql.po

    r186 r222  
    22# Copyright (c) 2002 the AlternC Development Team 
    33# <tech@alternc.org> 
    4 # $Id: mysql.po,v 1.6 2004/05/01 17:30:27 anonymous Exp $ 
     4# $Id: mysql.po,v 1.7 2004/05/19 14:23:06 benjamin Exp $ 
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: mysql.po,v 1.6 2004/05/01 17:30:27 anonymous Exp $\n" 
     7"Project-Id-Version: $Id: mysql.po,v 1.7 2004/05/19 14:23:06 benjamin Exp $\n" 
    88"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    99"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     
    7575msgid "Database" 
    7676msgstr "Database" 
    77  
    78 msgid "Database name" 
    79 msgstr "Database name" 
    8077 
    8178msgid "Delete my SQL database" 
  • bureau/locales/es_ES/LC_MESSAGES/admin.po

    r166 r222  
    1 # translation of admin2.po to  
    2 # Spanish AlternC Translation 
    3 # Copyright (c) 2002 the AlternC Development Team 
    4 # <tech@alternc.org> 
    5 # Bruno Marmier <bruno@marmier.net>, 2003 
    6 # 
    7 msgid "" 
    8 msgstr "" 
    9 "Project-Id-Version: admin2\n" 
     1msgid "" 
     2msgstr "" 
     3"Project-Id-Version: $Id: admin.po,v 1.7 2004/05/19 14:23:06 benjamin Exp $\n" 
    104"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    11 "PO-Revision-Date: 2003-09-30 16:42+0200\n" 
    12 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    13 "Language-Team: <i18n@alternc.org>\n" 
     5"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     6"Last-Translator: Bruno <bruno@alternc.org>\n" 
     7"Language-Team: Espanol <i18n@alternc.org>\n" 
    148"MIME-Version: 1.0\n" 
    159"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1610"Content-Transfer-Encoding: 8bit\n" 
    17 "X-Generator: KBabel 1.0.1\n" 
    18  
     11"X-Generator: Emacs 21\n" 
     12 
     13# ################################################################# 
    1914# m_membre 
    2015msgid "err_admin_1" 
    21 msgstr "-- ¡¡Solo los administradores tienen acceso a estas páginas!! -- " 
     16msgstr "-- ¡¡Solo los administradores tienen acceso a estas páginas!! --" 
    2217 
    2318msgid "err_admin_2" 
     
    3126 
    3227msgid "err_admin_5" 
    33 msgstr "Por favor, entre un email válido." 
     28msgstr "Por favor, entre un email válido" 
    3429 
    3530msgid "err_admin_6" 
    36 msgstr "Los campos login, contraseña y correo son obligatorios." 
     31msgstr "Todos los campos son obligatorios" 
    3732 
    3833msgid "err_admin_7" 
    3934msgstr "¡Solo puede pedir su contraseña una vez por día!" 
    4035 
     36#, fuzzy 
    4137msgid "err_admin_8" 
    42 msgstr "¡El usuario señalado YA es administrador!" 
    43  
     38msgstr "¡Solo puede pedir su contraseña una vez por día!" 
     39 
     40#, fuzzy 
    4441msgid "err_admin_9" 
    45 msgstr "¡El usuario señalado NO es administrador!" 
    46  
     42msgstr "¡Solo puede pedir su contraseña una vez por día!" 
     43 
     44# ################################################################# 
    4745# m_membre 
     46#, fuzzy 
    4847msgid "err_admin_10" 
    49 msgstr "Los únicos caracteres autorizados son a-z 0-9 y -." 
    50  
     48msgstr "-- ¡¡Solo los administradores tienen acceso a estas páginas!! --" 
     49 
     50# ################################################################# 
    5151# m_membre 
     52#, fuzzy 
    5253msgid "err_admin_11" 
    53 msgstr "Este TLD no existe" 
    54  
     54msgstr "-- ¡¡Solo los administradores tienen acceso a estas páginas!! --" 
     55 
     56# ################################################################# 
     57# m_membre 
     58#, fuzzy 
    5559msgid "err_admin_12" 
    56 msgstr "Este TLD ya existe." 
     60msgstr "-- ¡¡Solo los administradores tienen acceso a estas páginas!! --" 
    5761 
    5862msgid "This page is restricted to authorized staff" 
     
    8387msgstr "Haga clic aquí para seguir" 
    8488 
     89#, fuzzy 
    8590msgid "Member '%s' does not exist" 
    86 msgstr "El miembro '%s' no existe" 
    87  
     91msgstr "Este miembro no existe" 
     92 
     93#, fuzzy 
    8894msgid "Member %s successfully deleted" 
    89 msgstr "El miembro %s ha sido borrado con éxito" 
     95msgstr "La cuenta ha sido modificada con éxito" 
    9096 
    9197msgid "Member Edition" 
     
    116122msgstr "Conectar como" 
    117123 
    118 msgid "E" 
    119 msgstr "M" 
    120  
    121 msgid "Q" 
    122 msgstr "Q" 
    123  
    124 msgid "C" 
    125 msgstr "C" 
    126  
    127124msgid "Delete checked accounts" 
    128125msgstr "Suprimir las cuentas marcadas" 
     
    168165"to normal" 
    169166msgstr "" 
    170 "Solo hay una cuenta de administrador, no se puede transformar esta cuenta de " 
    171 "administrador en cuenta normal." 
     167"There is only one administrator account, you cannot turn this account back " 
     168"to normal" 
    172169 
    173170msgid "This account is a super-admin account" 
    174 msgstr "Esta cuenta es un cuenta de administrador" 
     171msgstr "This account is a super-admin account" 
    175172 
    176173msgid "Turn this account back to normal" 
    177 msgstr "Transformar esta cuenta de Administrador en cuenta Normal" 
     174msgstr "Turn this account back to normal" 
    178175 
    179176msgid "Make this account a super admin one" 
    180 msgstr "Transformar esta cuenta en cuenta de Administrador" 
     177msgstr "Make this account a super admin one" 
    181178 
    182179msgid "Disk space (in KB)" 
    183 msgstr "Espacio disco (en Kb)" 
     180msgstr "Disk space (in KB)" 
    184181 
    185182msgid "Number of email accounts" 
    186 msgstr "Número de cuentas de correo" 
    187  
     183msgstr "Number of email accounts" 
     184 
     185#, fuzzy 
    188186msgid "Number of mailing-lists" 
    189 msgstr "Número de listas de correos" 
    190  
     187msgstr "Creación de una nueva lista de correos" 
     188 
     189#, fuzzy 
    191190msgid "Number of domains" 
    192 msgstr "Número de dominios" 
    193  
     191msgstr "Subdominios" 
     192 
     193#, fuzzy 
    194194msgid "Number of FTP accounts" 
    195 msgstr "Número de cuentas FTP" 
    196  
     195msgstr "Cuentas FTP" 
     196 
     197#, fuzzy 
    197198msgid "Number of web statistics" 
    198 msgstr "Número de juegos de estadísticas" 
     199msgstr "Creación de estadísticas" 
    199200 
    200201msgid "Some TLD cannot be deleted..." 
    201 msgstr "Algunos TLD no pueden ser borrados..." 
    202  
     202msgstr "Some TLD cannot be deleted..." 
     203 
     204#, fuzzy 
    203205msgid "The requested TLD has been deleted" 
    204 msgstr "El TLD ha sido borrado" 
     206msgstr "La lista %s ha sido borrada" 
    205207 
    206208msgid "Manage allowed domains (TLD)" 
    207 msgstr "Administración de los dominios autorizados (TLD)" 
     209msgstr "Manage allowed domains (TLD)" 
    208210 
    209211msgid "" 
     
    211213"or denied after some checks (whois, ns, domain exists...)" 
    212214msgstr "" 
    213 "Aquí esta la lista de los TLD autorizados en este servidor. Cada TLD puede " 
    214 "ser autorizado o prohibido según ciertos criterios (whois, ns, dominio " 
    215 "existe...)" 
     215"Here is the list of the TLD allowed on this server. Each TLD can be allowed " 
     216"or denied after some checks (whois, ns, domain exists...)" 
    216217 
    217218msgid "TLD" 
     
    219220 
    220221msgid "Allowed Mode" 
    221 msgstr "Control efectuado" 
    222  
     222msgstr "Allowed Mode" 
     223 
     224#, fuzzy 
    223225msgid "Delete the checked TLD" 
    224 msgstr "Suprimir los dominios marcados" 
     226msgstr "Suprimir los usuarios marcados" 
    225227 
    226228msgid "Add a new TLD" 
    227 msgstr "Añadir un nuevo TLD" 
    228  
     229msgstr "Add a new TLD" 
     230 
     231#, fuzzy 
    229232msgid "The TLD has been successfully added" 
    230 msgstr "El nuevo TLD ha sido añadido" 
     233msgstr "La dirección de correo del nuevo dueño ha sido añadida" 
    231234 
    232235msgid "" 
     
    234237"done." 
    235238msgstr "" 
    236 "Entre el nuevo TLD (sin el primer punto) y escoge cual control debe ser " 
    237 "efectuado." 
     239"Enter the new TLD (without the first dot) and choose what check should be " 
     240"done." 
    238241 
    239242msgid "" 
     
    241244"please check m_domains.php accordingly." 
    242245msgstr "" 
    243 "ADVERTENCIA: sólo algunos TLD son conocidos en la función whois de AlternC, " 
    244 "por favor, verifique el archivo m_domains.php." 
     246"Warning : only some final tld are known in the whois function of AlternC, " 
     247"please check m_domains.php accordingly." 
    245248 
    246249msgid "Edit a TLD" 
    247 msgstr "Modificar un TLD" 
    248  
     250msgstr "Edit a TLD" 
     251 
     252#, fuzzy 
    249253msgid "Edit this TLD" 
    250 msgstr "Modificar este TLD" 
    251  
     254msgstr "Modificar cuenta" 
     255 
     256#, fuzzy 
    252257msgid "The TLD has been successfully edited" 
    253 msgstr "El TLD ha sido modificado con éxito" 
    254  
     258msgstr "La cuenta ha sido modificada con éxito" 
     259 
     260#, fuzzy 
    255261msgid "Change the default quotas" 
    256 msgstr "Modificar las cuotas por defecto" 
     262msgstr "Modificar estos parámetros" 
    257263 
    258264msgid "This TLD is forbidden" 
    259 msgstr "Este TLD está prohibido" 
     265msgstr "This TLD is forbidden" 
    260266 
    261267msgid "primary DNS is checked in WHOIS db" 
    262 msgstr "Verificación del DNS primario en la base de datos WHOIS" 
     268msgstr "primary DNS is checked in WHOIS db" 
    263269 
    264270msgid "primary & secondary DNS are checked in WHOIS db" 
    265 msgstr "" 
    266 "Verificación de los DNS primario y secundario en la base de datos WHOIS" 
     271msgstr "primary & secondary DNS are checked in WHOIS db" 
    267272 
    268273msgid "Domain must exist, but don't do any DNS check" 
    269 msgstr "El dominio debe existir, pero ningún control DNS debe ser efectuado" 
     274msgstr "Domain must exist, but don't do any DNS check" 
    270275 
    271276msgid "Domain can be installed, no check at all" 
    272 msgstr "El dominio puede ser instalado sin ningún control." 
     277msgstr "Domain can be installed, no check at all" 
    273278 
    274279msgid "Domain can be installed, force NO DNS hosting" 
    275 msgstr "El dominio puede ser instalado, forzar 'NO DNS'" 
     280msgstr "Domain can be installed, force NO DNS hosting" 
    276281 
    277282msgid "Manage the members" 
     
    279284 
    280285msgid "Admin Control Panel" 
    281 msgstr "Panel de Control Administrador" 
     286msgstr "Admin Control Panel" 
    282287 
    283288msgid "General SQL Admin" 
    284289msgstr "Admin general SQL " 
    285290 
     291#, fuzzy 
    286292msgid "Default quotas successfully changed" 
    287 msgstr "Cuotas por defecto modificadas con éxito" 
    288  
     293msgstr "La cuenta ftp ha sido modificada" 
     294 
     295#, fuzzy 
    289296msgid "Can he change its password" 
    290 msgstr "¿Puede cambiar su contraseña?" 
    291  
     297msgstr "Modificar clave" 
     298 
     299#, fuzzy 
    292300msgid "Account created by %s" 
    293 msgstr "Cuenta creada por %s" 
     301msgstr "¿Cuenta activa?" 
    294302 
    295303msgid "Locked Account" 
    296 msgstr "Cuenta bloqueada" 
    297  
    298 msgid "" 
    299 "Here is the list of the quotas on the server for the new accounts. If you " 
    300 "want to change them, enter new values" 
    301 msgstr "" 
    302 "Voici la liste des quotas par défaut sur ce serveur pour les nouveaux " 
    303 "comptes." 
    304  
    305 msgid "Default Value" 
    306 msgstr "Valeur par défaut" 
    307  
    308 msgid "Edit the default quotas" 
    309 msgstr "Modificar las cuotas por defecto" 
     304msgstr "Locked Account" 
  • bureau/locales/es_ES/LC_MESSAGES/bro.po

    r166 r222  
    1 # translation of bro2.po to  
    2 # Spanish AlternC Translation 
    3 # Copyright (c) 2002 the AlternC Development Team 
    4 # <tech@alternc.org> 
    5 # Bruno Marmier <bruno@marmier.net>, 2003 
    6 # 
    71msgid "" 
    82msgstr "" 
    9 "Project-Id-Version: bro2\n" 
     3"Project-Id-Version: $Id: bro.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $\n" 
    104"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    11 "PO-Revision-Date: 2003-09-30 16:31+0200\n" 
    12 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    13 "Language-Team: <i18n@alternc.org>\n" 
     5"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     6"Last-Translator: Bruno <bruno@alternc.org>\n" 
     7"Language-Team: Espanol <i18n@alternc.org>\n" 
    148"MIME-Version: 1.0\n" 
    159"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1610"Content-Transfer-Encoding: 8bit\n" 
    17 "X-Generator: KBabel 1.0.1\n" 
     11"X-Generator: Emacs 21\n" 
    1812 
    19 # Date drawn in the 1 column mode file list : 
    2013msgid "%3$d-%2$d-%1$d %4$d:%5$d" 
    21 msgstr "%1$d/%2$d/%3$d %4$dh%5$d" 
     14msgstr "el %1$d/%2$d/%3$d, a las %4$dh%5$d" 
    2215 
    2316msgid "Your file %s has been saved" 
     
    4336 
    4437msgid "Move" 
    45 msgstr "Mover" 
     38msgstr "Move" 
    4639 
    4740msgid "Create" 
    4841msgstr "Crear" 
     42 
     43msgid "File" 
     44msgstr "Archivo" 
    4945 
    5046msgid "Folder" 
     
    6056msgstr "Existe una cuenta ftp en esta carpeta" 
    6157 
    62 msgid "Click here to edit this ftp account." 
    63 msgstr "Haga clic aquí para modificar esta cuenta ftp." 
     58msgid "click here to edit this ftp account" 
     59msgstr "haga clic aquí para modificarla" 
    6460 
    65 msgid "Click here to create an ftp account in this folder." 
    66 msgstr "Haga clic aquí para crear una cuenta ftp en esta carpeta." 
     61msgid "click here to create an ftp account in this folder" 
     62msgstr "haba clic aquí para crear una cuenta ftp en esta carpeta" 
    6763 
    6864msgid "This folder has restricted access" 
     
    10298msgstr "Tamaño horizontal de la ventana" 
    10399 
     100#, fuzzy 
    104101msgid "File list view" 
    105 msgstr "Formato de vista de los archivos" 
     102msgstr "Modo de vista de los archivos" 
    106103 
    107104msgid "Downloading file format" 
     
    121118 
    122119msgid "1 column, detailed" 
    123 msgstr "1 columna, detallado" 
     120msgstr "1 column, detailed" 
    124121 
    125122msgid "2 columns, short" 
    126 msgstr "2 columnas, corto" 
     123msgstr "2 columns, short" 
    127124 
    128125msgid "3 columns, short" 
    129 msgstr "3 columnas, corto" 
     126msgstr "3 columns, short" 
    130127 
     128#, fuzzy 
    131129msgid "Go back to the file manager" 
    132130msgstr "Regresar al manejador de archivos" 
    133131 
    134132msgid "Edit the newly created file" 
    135 msgstr "Modificar el archivo creado" 
    136  
    137 msgid "File" 
    138 msgstr "Archivo" 
     133msgstr "Edit the newly created file" 
    139134 
    140135msgid "View" 
     
    148143 
    149144msgid "Save" 
    150 msgstr "Guardar" 
     145msgstr "Save" 
    151146 
    152147msgid "Save &amp; Quit" 
    153 msgstr "Guardar y Salir" 
     148msgstr "Save &amp; Quit" 
    154149 
     150#, fuzzy 
    155151msgid "Quit" 
    156 msgstr "Salir" 
     152msgstr "Cuota" 
    157153 
    158154msgid "all/none" 
    159 msgstr "todos/ninguno" 
     155msgstr "all/none" 
    160156 
     157#, fuzzy 
    161158msgid "err_bro_1" 
    162 msgstr "¡Carpeta o archivo incorrecto!" 
     159msgstr "El mensaje de error no existe (%s)" 
    163160 
     161#, fuzzy 
    164162msgid "err_bro_2" 
    165 msgstr "¡No se puede desplazar un archivo en la misma carpeta!" 
     163msgstr "El dominio '%s' no le apartenece." 
    166164 
     165#, fuzzy 
    167166msgid "No files in this folder" 
    168 msgstr "No hay ningún archivo en esta carpeta" 
    169  
    170 msgid "Searching for a folder" 
    171 msgstr "Búsqueda de una carpeta" 
    172  
    173 msgid "Error, cannot find this folder" 
    174 msgstr "Error, no se puede conseguir esta carpeta" 
    175  
    176 msgid "Back to the root folder" 
    177 msgstr "Regresar al directorio raíz" 
    178  
    179 msgid "Select" 
    180 msgstr "Seleccionar" 
    181  
    182 msgid "Cancel" 
    183 msgstr "Annuler" 
    184  
    185 # Variables used in m_brouteur.php3 
    186 #~ msgid "l_mode_0" 
    187 #~ msgstr "1 columna, detallado" 
    188  
    189 #~ msgid "l_mode_1" 
    190 #~ msgstr "2 columnas, corto" 
    191  
    192 #~ msgid "l_mode_2" 
    193 #~ msgstr "3 columnas, corto" 
    194  
    195 #~ msgid "l_createfile_0" 
    196 #~ msgstr "Regresar al manejador de archivos" 
    197  
    198 #~ msgid "l_createfile_1" 
    199 #~ msgstr "Modificar archivo" 
     167msgstr "Proteger esta carpeta" 
  • bureau/locales/es_ES/LC_MESSAGES/dom.po

    r166 r222  
    1 # Spanish AlternC Translation 
     1# English AlternC Translation 
    22# Copyright (c) 2002 the AlternC Development Team 
    33# <tech@alternc.org> 
    4 # 
     4# $Id: dom.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $ 
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: dom.po,v 1.7 2003/12/10 04:10:11 bruno Exp $\n" 
     7"Project-Id-Version: $Id: dom.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $\n" 
    88"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    9 "PO-Revision-Date: 2003-06-23 00:17-0400\n" 
    10 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    11 "Language-Team: espagnol <i18n@alternc.org>\n" 
     9"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     10"Last-Translator: Bruno <bruno@alternc.org>\n" 
     11"Language-Team: Espanol <i18n@alternc.org>\n" 
    1212"MIME-Version: 1.0\n" 
    1313"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1414"Content-Transfer-Encoding: 8bit\n" 
    15 "X-Generator: KBabel 0.9.6\n" 
     15"X-Generator: Emacs 21\n" 
    1616 
    1717msgid "quota_dom" 
    18 msgstr "Nombres de dominio" 
    19  
     18msgstr "Domain names" 
     19 
     20# ################################################################# 
     21# m_domains 
    2022msgid "err_dom_1" 
    2123msgstr "El dominio '%s' no existe." 
    2224 
    2325msgid "err_dom_2" 
    24 msgstr "El dominio '%s' no le pertenece." 
     26msgstr "El dominio '%s' no le apartenece." 
    2527 
    2628msgid "err_dom_3" 
    27 msgstr "--- Error de programación --- ¡Ningún Lock en los dominios!" 
     29msgstr "--- Error de programacióon --- ¡Ningún Lock en los dominios!" 
    2830 
    2931msgid "err_dom_4" 
     
    8991msgstr "" 
    9092"El dominio pedido se encuentra prohibido en este servidor, contacte el " 
    91 "administrador." 
     93"administrador" 
    9294 
    9395msgid "err_dom_23" 
     
    9597"Los DNS de este dominio no coinciden con aquellos del servidor. Tiene que " 
    9698"modificar los DNS del dominio (y a veces esperar 24 horas) antes de poder " 
    97 "instalarlo." 
     99"instalarlo" 
     100 
     101msgid "help_dns_mx %s %s" 
     102msgstr "" 
     103"Si administramos sus DNS : <br /> Puede decidir de administrar su correo por " 
     104"otra parte (campo MX).<br /> Coloque <b><code>%s</code> en este campo para " 
     105"administrar su correo con %s<br /> En otro caso, coloque la dirección IP o el " 
     106"servidor que desea usar para administrar su correo. <small>Advertencia : Si " 
     107"deja este campo vacio, no podrá usar el correo con su dominio.</small>" 
     108 
     109msgid "help_dns_mail" 
     110msgstr "Si no administramos sus DNS : <br /> ¿Administramos su correo?" 
     111 
     112msgid "help_domain_del %s" 
     113msgstr "" 
     114"Si quiere suprimir el dominio %s, haga clic en el botón aquí arriba. " 
     115"¡Cuidado, esto suprimirá también todas las cuentas ftp, correo, lista de " 
     116"correos, etc de este dominio, así que todos los subdominios relacionados!" 
     117 
     118#, fuzzy 
     119msgid "hlp_add_domain" 
     120msgstr "" 
     121"- Entrez le nom du domaine que vous souhaitez héberger. Le nom de domaine " 
     122"doit être complet, mais <b>sans le www.</b><br /> IMPORTANT : Si vous voulez " 
     123"un hébergement réel de domaine, il faut que les DNS de votre domaine " 
     124"pointent vers nos serveurs DNS. Contacter votre hébergeur pour plus " 
     125"d'information.<br /> Exemples : globenet.org / demo.com / test.eu.org etc." 
     126"<br />Plus d'info sur la gestion des domaines dans l'aide en ligne " 
     127"HELPID_200<br />" 
     128 
     129#, fuzzy 
     130msgid "hlp_add_domain_2" 
     131msgstr "" 
     132"Cliquez sur le lien ci-dessus. Vous pourrez ensuite accéder aux paremètres " 
     133"du domaine dans le menu à gauche.2 liens vont apparaitre : <br />- un premier " 
     134"pour modifier les paramètres d'hébergement du domaine (sous-domaines, " 
     135"redirections, hébergement mails ...) <br />- un second pour gérer les comptes " 
     136"emails du domaine (si vous souhaitez créer des boites aux lettres).<br />Plus " 
     137"d'info sur la gestion des domaines dans l'aide en ligne HELPID_200<br />" 
     138 
     139#, fuzzy 
     140msgid "hlp_del_domain" 
     141msgstr "" 
     142"Le domaine a été effacé, mais les fichiers de votre site n'ont pas été " 
     143"détruits.<br />Si vous souhaitez détruire les fichiers du site web, utilisez " 
     144"le Gestionnaire de Fichier<br />Plus d'info sur la gestion des domaines dans " 
     145"l'aide en ligne HELPID_200<br />" 
     146 
     147#, fuzzy 
     148msgid "hlp_edit_domain" 
     149msgstr "" 
     150"Cette zone vous permet de modifier les paramètres de votre domaine, ainsi " 
     151"que des sous-domaines installés<br />Vous pouvez créer un nouveau sous-domaine " 
     152"et choisir, soit de le rediriger vers votre espace disque, vers une autre " 
     153"adresse Internet, ou vers une adresse IP (utilisateurs avancés)<br />Vous " 
     154"pouvez aussi diriger un sous-domaine vers le webmail, vous permettant de " 
     155"lire votre mail par le web.<br />Plus d'info sur la gestion des domaines dans " 
     156"l'aide en ligne HELPID_200<br />" 
    98157 
    99158msgid "Domain hosting" 
     
    174233msgstr "¿Administrar el DNS de este dominio?" 
    175234 
    176 msgid "help_dns_mx %s %s" 
    177 msgstr "" 
    178 "Si administramos sus DNS : <br> Puede decidir de administrar su correo por " 
    179 "otra parte (campo MX).<br> Coloque <b><code>%s</code> en este campo para " 
    180 "administrar su correo con %s<br> En otro caso, coloque la dirección IP o el " 
    181 "servidor que desea usar para administrar su correo. <small>Advertencia : Si " 
    182 "deja este campo vacío, no podrá usar el correo con su dominio.</small>" 
    183  
    184235msgid "MX Field" 
    185236msgstr "Campo MX" 
    186237 
    187 msgid "help_dns_mail" 
    188 msgstr "Si no administramos sus DNS : <br> ¿Administramos su correo?" 
    189  
    190238msgid "Submit the changes" 
    191239msgstr "Validar cambios" 
    192  
    193 msgid "help_domain_del %s" 
    194 msgstr "" 
    195 "Si quiere suprimir el dominio %s, haga clic en el botón aquí arriba. " 
    196 "¡Cuidado, esto suprimirá también todas las cuentas ftp, correo, lista de " 
    197 "correos, etc de este dominio, así que todos los subdominios relacionados!" 
    198240 
    199241msgid "Delete %s" 
     
    217259 
    218260msgid "The modifications will take effect in 5 minutes." 
    219 msgstr "Las modificaciones serán efectivas dentro de 5 minutos." 
    220  
    221 msgid "hlp_add_domain" 
    222 msgstr "" 
    223 "- Entre el nombre de dominio que quiere hospedar. El nombre de dominio debe " 
    224 "ser completo, pero <b>sin www.</b><br>IMPORTANTE: si quiere un real " 
    225 "hospedaje,es necesario que los DNS de su dominio apuntan hacia nuestros " 
    226 "servidores DNS.Contacte su proveedor para más información.<br>Ejemplos: " 
    227 "globenet.org / demo.com /test.eu.org etc.<br>Más información sobre la " 
    228 "administración de los dominios en la ayuda en línea HELPID_200<br>" 
    229  
    230 msgid "hlp_add_domain_2" 
    231 msgstr "" 
    232 "Haga clic en el enlace de arriba. Podrá luego acceder  los parámetros de su " 
    233 "domino en el menú de la izquierdas. Dos enlaces van a aparecer:<br> - un " 
    234 "primero para poder modificar los parámetros del dominio (subdominio, " 
    235 "redirecciones, hospedaje correo, ...) <br>- un segundo para administrar las " 
    236 "cuentas de correos del dominio (para crear cuenta). <br>Más información " 
    237 "sobre la administración de los dominios en la ayuda en línea HELPID_200.<br>" 
    238  
    239 msgid "hlp_del_domain" 
    240 msgstr "" 
    241 "El dominio ha sido borrado, pero los archivos del sitio no lo han sido.<br> " 
    242 "Si desea suprimir los archivos del sitio web, utilice el Manejador de " 
    243 "Archivos.<br>Más información sobre la administración de los dominios en la " 
    244 "ayuda en línea HELPID_200.<br>" 
    245  
    246 msgid "hlp_edit_domain" 
    247 msgstr "" 
    248 "Este espacio le permite modificar los parámetros de su dominio, así que los " 
    249 "subdominios instalados.<br>Puede creer un nuevo subdominio y escoger de " 
    250 "redirigir hacia un espacio en el disco, hacia otra dirección web, o hacia " 
    251 "una dirección IP(usuarios avanzados).<br>Puede también dirigir un subdominio " 
    252 "hacia el Webmail, interfaz que le permite leer su correo en la red.<br> Más " 
    253 "información sobre la administración de los dominios en la ayuda en línea " 
    254 "HELPID_200.<br>" 
     261msgstr "Las modificaciones seran efectivas dentro de 5 minutos." 
  • bureau/locales/es_ES/LC_MESSAGES/err.po

    r166 r222  
    1 # Spanish AlternC Translation 
    2 # Copyright (c) 2003 the AlternC Development Team 
    3 # <tech@alternc.org> 
    4 # 
     1# ################################################################# 
     2# ERROR MESSAGES : 
     3# ################################################################# 
     4# m_error himself 
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: err.po,v 1.6 2003/12/10 04:10:11 bruno Exp $\n" 
     7"Project-Id-Version: $Id: err.po,v 1.7 2004/05/19 14:23:06 benjamin Exp $\n" 
    88"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    9 "PO-Revision-Date: 2003-03-27 23:57-0400\n" 
    10 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    11 "Language-Team:  <fr@li.org>\n" 
     9"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     10"Last-Translator: Bruno <bruno@alternc.org>\n" 
     11"Language-Team: Espanol <i18n@alternc.org>\n" 
    1212"MIME-Version: 1.0\n" 
    1313"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1414"Content-Transfer-Encoding: 8bit\n" 
    15 "X-Generator: KBabel 0.9.6\n" 
     15"X-Generator: Emacs 21\n" 
    1616 
    17 # ################################################################# 
    18 # ################################################################# 
    19 # ERROR MESSAGES : 
    20 # ################################################################# 
    21 # ################################################################# 
    22 # ################################################################# 
    23 # m_error himself 
    2417msgid "err_err_0" 
    2518msgstr "OK" 
    2619 
     20#, fuzzy 
    2721msgid "err_err_1" 
    2822msgstr "El mensaje de error no existe (%s)" 
  • bureau/locales/es_ES/LC_MESSAGES/ftp.po

    r166 r222  
    1 # Spanish AlternC Translation 
    2 # Copyright (c) 2003 the AlternC Development Team 
     1# English AlternC Translation 
     2# Copyright (c) 2002 the AlternC Development Team 
    33# <tech@alternc.org> 
    4 # 
     4# $Id: ftp.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $  
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: ftp.po,v 1.7 2003/12/10 04:10:11 bruno Exp $\n" 
     7"Project-Id-Version: $Id: ftp.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $\n" 
    88"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    9 "PO-Revision-Date: 2003-06-23 00:19-0400\n" 
    10 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    11 "Language-Team: espagnol <i18n@alternc.org>\n" 
     9"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     10"Last-Translator: Bruno <bruno@alternc.org>\n" 
     11"Language-Team: Espanol <i18n@alternc.org>\n" 
    1212"MIME-Version: 1.0\n" 
    1313"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1414"Content-Transfer-Encoding: 8bit\n" 
    15 "X-Generator: KBabel 0.9.6\n" 
     15"X-Generator: Emacs 21\n" 
    1616 
    1717msgid "quota_ftp" 
    18 msgstr "Cuentas FTP" 
     18msgstr "FTP Accounts" 
    1919 
     20# ################################################################# 
     21# m_ftp 
    2022msgid "err_ftp_1" 
    2123msgstr "No se consiguió ninguna cuenta ftp" 
    2224 
    2325msgid "err_ftp_2" 
    24 msgstr "Esta cuenta ftp no existe" 
     26msgstr "Esta cuenta ftp no existe." 
    2527 
    2628msgid "err_ftp_3" 
     
    3638msgstr "Imposible crear la carpeta." 
    3739 
     40# ################################################################# 
     41# ################################################################# 
     42# ONLINE HELP : 
     43# ################################################################# 
     44# ################################################################# 
     45msgid "hlp_ftp_list" 
     46msgstr "" 
     47"Aquí está la lista de las cuentas ftp que tienen acceso a su espacio. Haga " 
     48"clic en 'Modificar' para cambiar el nombre de usuario, la contraseña, o el " 
     49"directorio raíce.<br /> Para suprimir una cuenta, márcala con una cruz y haga " 
     50"clic en 'Suprimir cuentas marcadas'<br /> Para acceder a sus archivos con un " 
     51"programa ftp, se debe crear por lo menos una cuenta ftp. Cada cuenta está " 
     52"relacionada a un directorio y solo tendrá acceso a aquellos archivos que se " 
     53"encuentran en este directorio, o más abajo.<br /> Más información sobre FTP en " 
     54"la ayuda en línea HELPID_100<br />" 
     55 
     56#, fuzzy 
     57msgid "hlp_ftp_list_no" 
     58msgstr "" 
     59"Vous n'avez actuellement aucun Compte FTP de disponible. Cliquez sur " 
     60"'Création d'un compte ftp' pour en créer un.<br />Pour pouvoir accéder à vos " 
     61"fichiers avec un logiciel de ftp, vous devez créer au moins un compte.  " 
     62"Chaque compte est associé à un dossier, et n'aura donc accès qu'aux fichiers " 
     63"situés dans ce dossier ou en dessous. <br />Plus d'info sur le FTP dans l'aide " 
     64"en ligne HELPID_100<br />" 
     65 
     66#, fuzzy 
     67msgid "hlp_ftp_add" 
     68msgstr "" 
     69"Pour ajouter un compte ftp, vous devez choisir un Nom d'utilisateur, un mot " 
     70"de passe, et un répertoire racine<br />Le nom d'utilisateur commence toujours " 
     71"par votre nom de login ou le nom d'un de vos domaines.<br />Le répertoire " 
     72"racine, s'il n'existe pas, sera créé automatiquement.<br />Note : Le compte " 
     73"que vous créez ainsi aura accès en lecture et en écriture aux fichiers " 
     74"situés dans le répertoire et tous ses sous-répertoires.<br />Plus d'info sur " 
     75"le FTP dans l'aide en ligne HELPID_100<br />" 
     76 
    3877msgid "You cannot add any new ftp account, your quota is over." 
    3978msgstr "Su cuota de cuentas ftp alcanzó su limite, no se puede crear más." 
    4079 
    4180msgid "Create a new ftp account" 
    42 msgstr "Crear una nueva cuenta ftp" 
     81msgstr "Creación de una cuenta ftp" 
    4382 
    4483msgid "Create this new FTP account." 
     
    74113msgid "FTP accounts" 
    75114msgstr "Cuentas FTP" 
    76  
    77 # ################################################################# 
    78 # ################################################################# 
    79 # ONLINE HELP : 
    80 # ################################################################# 
    81 # ################################################################# 
    82 msgid "hlp_ftp_list" 
    83 msgstr "" 
    84 "Aquí está la lista de las cuentas ftp que tienen acceso a su espacio. Haga " 
    85 "clic en 'Modificar' para cambiar el nombre de usuario, la contraseña, o el " 
    86 "directorio raiz.<br> Para suprimir una cuenta, márcala con una cruz y haga " 
    87 "clic en 'Suprimir cuentas marcadas'<br> Para acceder a sus archivos con un " 
    88 "programa ftp, se debe crear por lo menos una cuenta ftp. Cada cuenta está " 
    89 "relacionada a un directorio y solo tendrá acceso a aquellos archivos que se " 
    90 "encuentran en este directorio, o más abajo.<br> Más información sobre FTP en " 
    91 "la ayuda en línea HELPID_100<br>" 
    92  
    93 msgid "hlp_ftp_list_no" 
    94 msgstr "" 
    95 "Actualmente no hay ninguna Cuenta FTP disponible. Haga clic en 'Crear una " 
    96 "cuenta FTP' para instalar una.<br>Para poder acceder a sus datos con un " 
    97 "programa ftp, necesita por lo menos crear una cuenta. Cada cuenta debe estar " 
    98 "asociada con un directorio, y por lo tanto sólo tendrá acceso a los archivos " 
    99 "ubicados en este directorio y más abajo. <br>Más información sobre FTP en la " 
    100 "ayuda en línea HELPID_100<br>" 
    101  
    102 msgid "hlp_ftp_add" 
    103 msgstr "" 
    104 "Para añadir una cuenta ftp, debe escoger un Nombre de usuario, una " 
    105 "contraseña, y una directorio raíz.<br>El nombre de usuario siempre empieza " 
    106 "por su nombre de login o el nombre de uno de sus dominios.<br> El directorio " 
    107 "raíz, si no existe, será creado automáticamente.<br> Nota: la cuenta que " 
    108 "está creando tendrá acceso en lectura y escritura a todos los archivos " 
    109 "situados en el directorio y en los subdirectorios.<br>Más información en FTP " 
    110 "de la ayuda en línea HELPID_100<br>" 
  • bureau/locales/es_ES/LC_MESSAGES/hta.po

    r166 r222  
    1 # Spanish AlternC Translation 
    2 # Copyright (c) 2003 the AlternC Development Team 
    3 # <tech@alternc.org> 
    4 # 
     1############################################ 
     2# m_webaccess 
    53msgid "" 
    64msgstr "" 
    7 "Project-Id-Version: $Id: hta.po,v 1.7 2003/12/10 04:10:11 bruno Exp $\n" 
     5"Project-Id-Version: $Id: hta.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $\n" 
    86"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    9 "PO-Revision-Date: 2003-06-22 22:57-0400\n" 
    10 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    11 "Language-Team: espagnol <i18n@alternc.org>\n" 
     7"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     8"Last-Translator: Bruno <bruno@alternc.org>\n" 
     9"Language-Team: Espanol <i18n@alternc.org>\n" 
    1210"MIME-Version: 1.0\n" 
    1311"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1412"Content-Transfer-Encoding: 8bit\n" 
    15 "X-Generator: KBabel 0.9.6\n" 
     13"X-Generator: Emacs 21\n" 
    1614 
    1715msgid "err_hta_1" 
     
    4846msgstr "Por favor entre un nombre de usuario válido" 
    4947 
    50 msgid "err_6_7" 
    51 msgstr "No se consiguió juego de estadísticas brutas" 
     48msgid "help_hta_list" 
     49msgstr "Aquí está la lista de las carpetas protegidas de su cuenta" 
     50 
     51msgid "Protect a folder" 
     52msgstr "Proteger una carpeta" 
    5253 
    5354msgid "The folder must exists." 
     
    9798 
    9899msgid "New password" 
    99 msgstr "Nueva contraseña" 
     100msgstr "Nueva clave" 
    100101 
    101102msgid "Change the password" 
     
    105106msgstr "Lista de carpetas protegidas" 
    106107 
    107 msgid "Protect a folder" 
    108 msgstr "Proteger una carpeta" 
    109  
    110 msgid "help_hta_list" 
    111 msgstr "Aquí está la lista de las carpetas protegidas de su cuenta" 
    112  
    113108msgid "Unprotect the checked folders" 
    114109msgstr "Quitar protección a las carpetas marcadas" 
  • bureau/locales/es_ES/LC_MESSAGES/mail.po

    r166 r222  
    1 # Spanish AlternC Translation 
    2 # Copyright (c) 2003 the AlternC Development Team 
     1# English AlternC Translation 
     2# Copyright (c) 2002 the AlternC Development Team 
    33# <tech@alternc.org> 
    4 # 
     4# $Id: mail.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $ 
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: mail.po,v 1.7 2003/12/10 04:10:11 bruno Exp $\n" 
     7"Project-Id-Version: $Id: mail.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $\n" 
    88"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    9 "PO-Revision-Date: 2003-06-23 00:25-0400\n" 
    10 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    11 "Language-Team: espagnol <i18n@alternc.org>\n" 
     9"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     10"Last-Translator: Bruno <bruno@alternc.org>\n" 
     11"Language-Team: Espanol <i18n@alternc.org>\n" 
    1212"MIME-Version: 1.0\n" 
    1313"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1414"Content-Transfer-Encoding: 8bit\n" 
    15 "X-Generator: KBabel 0.9.6\n" 
     15"X-Generator: Emacs 21\n" 
    1616 
    1717msgid "quota_mail" 
    18 msgstr "Cuentas de correos" 
     18msgstr "Email Accounts" 
    1919 
     20# ################################################################# 
     21# m_mails 
    2022msgid "err_mail_1" 
    2123msgstr "Conexión ldap imposible. Intente más tarde." 
    2224 
    2325msgid "err_mail_2" 
    24 msgstr "Ninguna cuenta de correo en el dominio '%s'." 
     26msgstr "Ninguna cuenta de correo en el dominio '%s'" 
    2527 
    2628msgid "err_mail_3" 
     
    3032msgstr "" 
    3133"Por favor marque 'cuenta pop' y entre una contraseña pop <b>o</b> entre " 
    32 "direcciones para redirigir <b>o</o> ambas cosas." 
     34"dirección para redirigir <b>o</o> ambas cosas" 
    3335 
    3436msgid "err_mail_5" 
     
    3941 
    4042msgid "err_mail_7" 
    41 msgstr "El correo '%s' ya existe." 
     43msgstr "El correo '%s' ya existe" 
    4244 
    4345msgid "err_mail_8" 
     
    4648 
    4749msgid "err_mail_9" 
    48 msgstr "El dominio '%s' ya existe." 
     50msgstr "El dominio '%s' ya exsite." 
    4951 
    5052msgid "err_mail_10" 
    51 msgstr "-- Error de programación -- el cuota Mail no existe." 
     53msgstr "-- Error de programación -- el cuota Mail no existe" 
    5254 
    5355msgid "err_mail_11" 
    54 msgstr "Entre una dirección de correo." 
     56msgstr "Entre una dirección de correo" 
    5557 
    5658msgid "err_mail_12" 
     
    5860 
    5961msgid "err_mail_13" 
    60 msgstr "Entre una dirección de correo válida." 
     62msgstr "Entre una dirección de correo válida" 
    6163 
     64#, fuzzy 
    6265msgid "err_mail_14" 
    63 msgstr "Una o más correos para la redirección no son válidos." 
     66msgstr "Un ou plusieurs Email de redirection ne sont pas valides" 
    6467 
    6568msgid "err_mail_15" 
    6669msgstr "" 
    67 "Esta cuenta no es una cuenta pop. ¡Es imposible cambiarle la contraseña!" 
     70"Esta cuenta no es una cuenta pop. ¡Es imposbile cambiarle la contraseña!" 
     71 
     72msgid "help_mail_add" 
     73msgstr "" 
     74"- Para crear esta cuenta de correo<br /> Si quiere almacenar los correos " 
     75"recibidos y acceder al buzón con un programa de corre o por webmail, marque " 
     76"'Cuenta pop'. En este caso, entre una contraseña para la cuenta pop.<br /> Si " 
     77"quiere dirigir esta cuenta hacia otras, entre la lista de las dirección " 
     78"correspondientes, una dirección por línea (con el @ en todos caso).<br /> " 
     79"Nota : tiene que escojer una de las dos cosas, o ambas<br /> Para acceder a la " 
     80"lectura del correo, usar la dirección http://sudominio/webmail/ o un " 
     81"subdominio de tipo 'Acceso a Webmail'<br /> El nombre de usuario es " 
     82"<code>login_sudominio</code> y la clave, aquella que acaba de entrar en este " 
     83"formulario." 
     84 
     85msgid "help_mail_edit" 
     86msgstr "" 
     87"- Para modificar esta cuenta de correo<br /> Si quiere almacenar los correos " 
     88"recibidos y acceder al buzón con un programa de corre o por webmail, marque " 
     89"'Cuenta pop'. En este caso, entre una contraseña para la cuenta pop.<br /> Si " 
     90"quiere dirigir esta cuenta hacia otras, entre la lista de las dirección " 
     91"correspondientes, una dirección por línea (con el @ en todos caso).<br /> " 
     92"Nota : tiene que escojer una de las dos cosas, o ambas<br /> Para acceder a la " 
     93"lectura del correo, usar la dirección http://sudominio/webmail/ o un " 
     94"subdominio de tipo 'Acceso a Webmail'<br /> El nombre de usuario es " 
     95"<code>login_sudominio</code> y la clave, aquella que acaba de entrar en este " 
     96"formulario." 
    6897 
    6998msgid "Add a mail to the domain %s" 
    7099msgstr "Añadir una cuenta de correo para el dominio %s" 
    71  
    72 msgid "help_mail_add" 
    73 msgstr "" 
    74 "- Para crear esta cuenta de correo<br> Si quiere almacenar los correos " 
    75 "recibidos y acceder al buzón con un programa de corre o por webmail, marque " 
    76 "'Cuenta pop'. En este caso, entre una contraseña para la cuenta pop.<br> Si " 
    77 "quiere dirigir esta cuenta hacia otras, entre la lista de las dirección " 
    78 "correspondientes, una dirección por línea (con el @ en todos caso).<br> " 
    79 "Nota : tiene que escoger una de las dos cosas, o ambas<br> Para acceder a la " 
    80 "lectura del correo, usar la dirección http://sudominio/webmail/ o un " 
    81 "subdominio de tipo 'Acceso a Webmail'<br> El nombre de usuario es " 
    82 "<code>login_sudominio</code> y la clave, aquella que acaba de entrar en este " 
    83 "formulario." 
    84100 
    85101msgid "Create this mailbox" 
     
    116132msgstr "Modificar este buzón" 
    117133 
    118 msgid "help_mail_edit" 
    119 msgstr "" 
    120 "- Para modificar esta cuenta de correo<br> Si quiere almacenar los correos " 
    121 "recibidos y acceder al buzón con un programa de corre o por webmail, marque " 
    122 "'Cuenta pop'. En este caso, entre una contraseña para la cuenta pop.<br> Si " 
    123 "quiere dirigir esta cuenta hacia otras, entre la lista de las dirección " 
    124 "correspondientes, una dirección por línea (con el @ en todos caso).<br> " 
    125 "Nota : tiene que escoger una de las dos cosas, o ambas<br> Para acceder a la " 
    126 "lectura del correo, usar la dirección http://sudominio/webmail/ o un " 
    127 "subdominio de tipo 'Acceso a Webmail'<br> El nombre de usuario es " 
    128 "<code>login_sudominio</code> y la clave, aquella que acaba de entrar en este " 
    129 "formulario." 
    130  
    131134msgid "The mailbox %s has been successfully changed" 
    132135msgstr "El buzón %s ha sido modificado" 
  • bureau/locales/es_ES/LC_MESSAGES/main.po

    r166 r222  
    1 # translation of main.po to Espagnol 
    2 # translation of main2.po to 
    3 # Spanish AlternC Translation 
    4 # Copyright (c) 2003 the AlternC Development Team 
     1# English AlternC Translation 
     2# Copyright (c) 2002 the AlternC Development Team 
    53# <tech@alternc.org> 
    6 # Bruno Marmier <bruno@marmier.net>, 2003. 
    7 # 
     4# $Id: main.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $ 
    85msgid "" 
    96msgstr "" 
    10 "Project-Id-Version: main\n" 
     7"Project-Id-Version: $Id: main.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $\n" 
    118"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    12 "PO-Revision-Date: 2003-12-07 19:10-0400\n" 
    13 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    14 "Language-Team: Espagnol <i18n@alternc.org>\n" 
     9"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     10"Last-Translator: Bruno <bruno@alternc.org>\n" 
     11"Language-Team: Espanol <i18n@alternc.org>\n" 
    1512"MIME-Version: 1.0\n" 
    1613"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1714"Content-Transfer-Encoding: 8bit\n" 
    18 "X-Generator: KBabel 1.0.2\n" 
     15"X-Generator: Emacs 21\n" 
    1916 
    2017msgid "quota_web" 
    21 msgstr "Espace disque" 
     18msgstr "Disk space" 
    2219 
    23 msgid "Enter" 
    24 msgstr "Entrer" 
    25  
    26 msgid "Enter your username and password to connect to the virtual desktop" 
     20#, fuzzy 
     21msgid "" 
     22"Enter your username and your password to connect to the virtual desktop " 
     23"interface" 
    2724msgstr "" 
    2825"Entrar su nombre de usuario y su contraseña para conectarse a la interfaz de " 
     
    4138msgstr "Contraseña" 
    4239 
     40#, fuzzy 
    4341msgid "You cannot change your password" 
    44 msgstr "Usted no puede cambiar su contraseña" 
     42msgstr "Cambiar mi clave" 
    4543 
    4644msgid "Administration of" 
     
    4846 
    4947msgid "AlternC Desktop" 
    50 msgstr "Bureau AlternC" 
     48msgstr "AlternC Desktop" 
    5149 
    5250msgid "Last Login: " 
    5351msgstr "Última conexión : " 
    5452 
     53#, fuzzy 
    5554msgid "the %3$d-%2$d-%1$d at %4$d:%5$d" 
    56 msgstr "el %3$d/%2$d/%1$d, a las %4$dh%5$d" 
     55msgstr "el %1$d/%2$d/%3$d, a las %4$dh%5$d" 
    5756 
    5857msgid "%1$d login failed since last login" 
    59 msgstr "%1$d intentas fallidas desde la última conexión" 
     58msgstr "%1$d intentas fallidas desce la última conexión" 
    6059 
    6160msgid "from: <code> %1$s </code>" 
     
    7776msgstr "" 
    7877"Un correo a sido mandado a la dirección <big><code>%s</code></big> para " 
    79 "confirmar.<br> Este correo contiene un enlace que podrá seguir para validar " 
    80 "la modificación.<br> Ahí se le pedirá la siguiente llave : <br>" 
    81  
    82 msgid "" 
    83 "Enter the key you got when you requested the mailbox change, then click the " 
    84 "OK button." 
    85 msgstr "" 
    86 "Entre la llave que se le ha mandado para el cambio de dirección de correo y " 
    87 "haga clic en OK" 
    88  
    89 msgid "Key" 
    90 msgstr "Llave" 
    91  
    92 msgid "OK" 
    93 msgstr "OK" 
    94  
    95 msgid "The mailbox has been successfully changed." 
    96 msgstr "La dirección de correo ha sido cambiada." 
    97  
    98 msgid "Disconnected" 
    99 msgstr "Desconectado" 
    100  
    101 msgid "You have been logged out of your administration desktop." 
    102 msgstr "Ha sido desconectado de la interfaz de administración." 
    103  
    104 msgid "Click here to log in" 
    105 msgstr "Haga clic aquí para volver a conectarse" 
    106  
    107 msgid "Settings of your account" 
    108 msgstr "Parámetros de su cuenta" 
     78"confirmar.<br /> Este correo contien un enlace que podrá seguir para validar " 
     79"la modificación.<br /> Ahí se le pedirá la siguiente clave : <br />" 
    10980 
    11081msgid "help_chg_passwd" 
    11182msgstr "" 
    112 "Aquí puede modificar la contraseña que le permite usar la interfaz. ¡No la " 
    113 "pierda!<br> Entre aquí la contraseña actual, y luego la nueva contraseña " 
    114 "(dos veces, por seguridad), y haga clic en 'Cambiar la contraseña''" 
    115  
    116 msgid "Password change" 
    117 msgstr "Cambio de contraseña" 
    118  
    119 msgid "Old password" 
    120 msgstr "Antigua contraseña" 
    121  
    122 msgid "New password" 
    123 msgstr "Nueva contraseña" 
    124  
    125 msgid "Change my password" 
    126 msgstr "Cambiar mi contraseña" 
     83"Aquí puede modificar la clave que le permite uzar la interfaz. ¡No la pierda!" 
     84"<br /> Entre aquí la clave actual, y luego la nueva clave (dos veces, por " 
     85"seguridad), y haga clic en 'Cambiar la clave''" 
    12786 
    12887msgid "help_chg_mail" 
    12988msgstr "" 
    130 "Aquí puede modificar la dirección de correo relacionada a su cuenta.<br> " 
     89"Aquí puede modificar la dirección de correo relacionada a su cuenta.<br /> " 
    13190"Entre ahí la nueva dirección. Un correo será enviado a esta dirección para " 
    13291"confirmar." 
    133  
    134 msgid "Current mailbox" 
    135 msgstr "Buzón actual" 
    136  
    137 msgid "New mailbox" 
    138 msgstr "Nuevo buzón" 
    139  
    140 msgid "Change my mail" 
    141 msgstr "Cambiar mi buzón" 
    142  
    143 msgid "Your password has been successfully changed." 
    144 msgstr "La contraseña ha sido cambiada." 
    145  
    146 msgid "Settings" 
    147 msgstr "Configuración" 
    148  
    149 msgid "Logout" 
    150 msgstr "Salir" 
    151  
    152 msgid "Show my quotas" 
    153 msgstr "Mostrar cuotas" 
    154  
    155 msgid "Account's quotas" 
    156 msgstr "Cuotas de la cuenta" 
    157  
    158 msgid "No quotas for this account, or quotas currently unavailable!" 
    159 msgstr "¡No hay cuota para esta cuenta, o imposible obtener cuota!" 
    160  
    161 msgid "Online help settings" 
    162 msgstr "Parámetros de la ayuda en linea" 
    16392 
    16493msgid "help_help_settings" 
    16594msgstr "" 
    16695"Cada página de la interfaz presenta información de ayuda resumida, " 
    167 "acompañada por un enlace hacia la ayuda en línea<br> Para ver esta ayuda de " 
     96"acompañada por un enlace hacia la ayuda en línea<br /> Para ver esta ayuda de " 
    16897"manera automática, marquelo ahí debajo." 
    169  
    170 msgid "Do you want to see the help texts and links on each page?" 
    171 msgstr "¿Quiere ver los textos de ayuda y los enlaces en cada página?" 
    172  
    173 msgid "Change these settings" 
    174 msgstr "Modificar estos parámetros" 
    175  
    176 msgid "Your help setting has been updated." 
    177 msgstr "Los parámetros de ayuda han sido modificados." 
    178  
    179 # Variables used in functions.php3 
    180 msgid "Bytes" 
    181 msgstr "Bytes" 
    182  
    183 msgid "Kb" 
    184 msgstr "Kb" 
    185  
    186 msgid "Mb" 
    187 msgstr "Mb" 
    188  
    189 msgid "Gb" 
    190 msgstr "Gb" 
    191  
    192 msgid "Tb" 
    193 msgstr "Tb" 
    194  
  • bureau/locales/es_ES/LC_MESSAGES/mem.po

    r166 r222  
    1 # Spanish AlternC Translation 
    2 # Copyright (c) 2002 the AlternC Development Team 
    3 # <tech@alternc.org> 
    4 # 
     1# ################################################################# 
     2# m_membre 
    53msgid "" 
    64msgstr "" 
    7 "Project-Id-Version: $Id: mem.po,v 1.6 2003/12/10 04:10:11 bruno Exp $\n" 
     5"Project-Id-Version: $Id: mem.po,v 1.7 2004/05/19 14:23:06 benjamin Exp $\n" 
    86"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    9 "PO-Revision-Date: 2003-06-23 00:27-0400\n" 
    10 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    11 "Language-Team: espagnol <i18n@alternc.org>\n" 
     7"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     8"Last-Translator: Bruno <bruno@alternc.org>\n" 
     9"Language-Team: Espanol <i18n@alternc.org>\n" 
    1210"MIME-Version: 1.0\n" 
    1311"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1412"Content-Transfer-Encoding: 8bit\n" 
    15 "X-Generator: KBabel 0.9.6\n" 
     13"X-Generator: Emacs 21\n" 
    1614 
    1715msgid "err_mem_1" 
    18 msgstr "Usuario o contraseña incorrecta." 
     16msgstr "Usuario o contraseña incorrecta" 
    1917 
    2018msgid "err_mem_2" 
    21 msgstr "Cuenta bloqueada, contacte el administrador." 
     19msgstr "Cuenta bloqueada, contacte el administrador" 
    2220 
    2321msgid "err_mem_3" 
    24 msgstr "Cookie incorrecto, acepte los cookies." 
     22msgstr "Cookie incorrecto, acepte los cookies" 
    2523 
    2624msgid "err_mem_4" 
    27 msgstr "Sesión inexistente, contacte el administrador." 
     25msgstr "Sesión inexistante, contacte el administrador" 
    2826 
    2927msgid "err_mem_5" 
    30 msgstr "IP incorrecta, contacte el administrador." 
     28msgstr "IP incorrecta, contacte el administrador" 
    3129 
     30# PROBLEME : il y avait 2 fois le 5, les autres messages doivent surement etre décalés (TODO) 
    3231msgid "err_mem_6" 
    33 msgstr "La antigua contraseña es incorrecta." 
     32msgstr "La antigua contraseña es incorrecta" 
    3433 
    3534msgid "err_mem_7" 
    36 msgstr "Las dos nuevas contraseñas son distintas." 
     35msgstr "Las dos nuevas contraseñas son distintas" 
    3736 
    3837msgid "err_mem_8" 
    39 msgstr "Una contraseña debe estar compuesta por lo menos de 3 carácteres." 
     38msgstr "Una contraseña debe estar compuesta por lo menos de 3 carácteres" 
    4039 
    4140msgid "err_mem_9" 
    42 msgstr "Los datos proporcionados son incorrectos." 
    43  
    44 msgid "err_mem_11" 
    45 msgstr "No puede cambiar su contraseña." 
    46  
    47 msgid "err_mem_12" 
    48 msgstr "Debe ser administrador para cambiar las preferencias de Administrador." 
     41msgstr "Los datos proporcionados son incorrectos" 
    4942 
    5043msgid "Help" 
    51 msgstr "Ayuda" 
    52  
    53 msgid "Admin preferences" 
    54 msgstr "Preferencias de administrador" 
    55  
    56 msgid "Members list view" 
    57 msgstr "Vista de la lista de miembros" 
    58  
    59 msgid "Large view" 
    60 msgstr "Vista amplia" 
    61  
    62 msgid "Short view" 
    63 msgstr "Vista reducida" 
    64  
    65 msgid "Change my admin preferences" 
    66 msgstr "Modificar mis preferencias de administrador" 
    67  
    68 msgid "Your administrator preferences has been successfully changed." 
    69 msgstr "Sus preferencias de administrador han sido modificadas." 
     44msgstr "Help" 
  • bureau/locales/es_ES/LC_MESSAGES/mysql.po

    r186 r222  
    1 # translation of mysql2.po to  
    2 # Spanish AlternC Translation 
    3 # Copyright (c) 2003 the AlternC Development Team 
     1# English AlternC Translation 
     2# Copyright (c) 2002 the AlternC Development Team 
    43# <tech@alternc.org> 
    5 # Bruno Marmier <bruno@marmier.net>, 2003 
    6 # 
     4# $Id: mysql.po,v 1.10 2004/05/19 14:23:06 benjamin Exp $ 
    75msgid "" 
    86msgstr "" 
    9 "Project-Id-Version: mysql2\n" 
     7"Project-Id-Version: $Id: mysql.po,v 1.10 2004/05/19 14:23:06 benjamin Exp $\n" 
    108"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    11 "PO-Revision-Date: 2003-09-30 16:47+0200\n" 
    12 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    13 "Language-Team: <i18n@alternc.org>\n" 
     9"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     10"Last-Translator: Bruno <bruno@alternc.org>\n" 
     11"Language-Team: Espanol <i18n@alternc.org>\n" 
    1412"MIME-Version: 1.0\n" 
    1513"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1614"Content-Transfer-Encoding: 8bit\n" 
    17 "X-Generator: KBabel 1.0.1\n" 
     15"X-Generator: Emacs 21\n" 
    1816 
    1917msgid "quota_mysql" 
    20 msgstr "Bases de datos MySQL" 
     18msgstr "MySQL Databases" 
    2119 
    2220# ################################################################# 
    23 # m_webaccess 
     21# m_mysql 
    2422msgid "err_mysql_1" 
    2523msgstr "No tiene ninguna base de datos disponible." 
    2624 
    2725msgid "err_mysql_2" 
    28 msgstr "" 
    29 "El nombre de la base de datos solo puede contener cifras y letras minúsculas." 
     26msgstr "La contraseña es demasiado larga (16 caracteres máximum)" 
    3027 
    3128msgid "err_mysql_3" 
    32 msgstr "Esta base de datos ya existe, utilice otro nombre." 
     29msgstr "" 
     30"La base de datos no existe, primero tiene que crearla par poder acceder a " 
     31"ella." 
    3332 
    3433msgid "err_mysql_4" 
    35 msgstr "¡Esta base de datos no existe!" 
     34msgstr "¡La base de datos ya existe!" 
    3635 
     36#, fuzzy 
    3737msgid "err_mysql_5" 
    38 msgstr "¡El número de copia de seguridad es incorrecto!" 
     38msgstr "Le nombre d'historique est incorrect." 
    3939 
    4040msgid "err_mysql_6" 
     
    4242 
    4343msgid "err_mysql_7" 
    44 msgstr "No tiene ninguna base de datos, no puede cambiar la contraseña." 
    45  
    46 msgid "err_mysql_8" 
    47 msgstr "La contraseña es demasiado larga (16 caracteres máximum)." 
    48  
    49 msgid "err_mysql_9" 
    5044msgstr "El archivo especificado no existe o es incorrecto." 
    5145 
    52 # ################################################################# 
    53 # m_webaccess 
    54 msgid "err_mysql_10" 
    55 msgstr "Error: Ud, no puede crear su base principal. ¡Le queda otras bases!" 
     46msgid "help_sql_list_ok" 
     47msgstr "" 
     48"Su base de datos existe.<br /> Haga clic en 'Admin SQL' en el menu para " 
     49"administrarla<br /> o utiliza el menu aquí abajo para los demás parámetros : " 
    5650 
    57 # ################################################################# 
    58 # m_webaccess 
    59 msgid "err_mysql_11" 
     51msgid "help_sql_list_no" 
     52msgstr "Su base de datos no existe, entre aquí una contraseña para crearla" 
     53 
     54#, fuzzy 
     55msgid "hlp_sql_bck" 
    6056msgstr "" 
    61 "No tiene ninguna base de datos disponible. Haga clic en «Bases de datos» " 
    62 "para crear una." 
     57"Les sauvegardes de votre base MySQL sont stockées dans le dossier choisi " 
     58"sous le nom <code>db.sql.1</code> à <code>db.sql.19</code><br />où 'db' est " 
     59"remplacé par le nom de la base de données.<br />ATTENTION : si vous modifiez " 
     60"les paramètres de la sauvegarde (nombre de sauvegarde, compression ...) des " 
     61"vieilles sauvegardes peuvent rester dans le dossier concerné. Vous pouvez " 
     62"les effacer dans le gestionnaire de fichier." 
    6363 
    6464msgid "Your database has been successfully created" 
    6565msgstr "Su base de datos ha sido creada" 
    6666 
    67 msgid "General SQL Admin" 
    68 msgstr "Admin general SQL " 
    69  
    7067msgid "MySQL Databases" 
    7168msgstr "Base de datos MySQL" 
    72  
    73 msgid "help_sql_list_ok" 
    74 msgstr "" 
    75 "Ud. tiene una o más bases de datos.<br> Haga clic en 'Admin SQL' en el menu " 
    76 "para administrarla<br> o utiliza el menú aquí abajo para administrar las " 
    77 "copias de seguridad,<br> las restauraciones o para borrar las bases:" 
    78  
    79 msgid "help_sql_list_no" 
    80 msgstr "" 
    81 "Su base de datos principal no existe, entre una contraseña aquí para crearla" 
    8269 
    8370msgid "SQL Server" 
     
    8774msgstr "Base de datos" 
    8875 
    89 msgid "Database name" 
    90 msgstr "Base de datos nombre" 
    91  
    9276msgid "Delete my SQL database" 
    9377msgstr "Borrar base de datos SQL" 
    9478 
     79#, fuzzy 
    9580msgid "Delete the checked databases" 
    96 msgstr "Borrar las bases de datos seleccionadas" 
     81msgstr "Suprimir los usuarios marcados" 
    9782 
    9883msgid "Get the current SQL parameters" 
    9984msgstr "Mostrar los parámetros actuales de SQL" 
    10085 
     86#, fuzzy 
    10187msgid "Confirm the deletion of the following SQL databases" 
    102 msgstr "Confirmar la supresión de las bases de datos SQL siguientes" 
     88msgstr "Confirmar la supresión de su base de datos SQL" 
    10389 
     90#, fuzzy 
    10491msgid "This will delete all the tables currently in those db." 
    105 msgstr "Esto borrará todas las tablas contenidas dentro de estas bases." 
     92msgstr "Esto borrará todas las tablas contenidas dentro de su base." 
    10693 
     94#, fuzzy 
    10795msgid "The database %s has been successfully deleted" 
    108 msgstr "Su base de datos %s ha sido borrada" 
     96msgstr "La lista %s ha sido borrada" 
    10997 
    11098msgid "You currently have no database defined" 
     
    170158 
    171159msgid "Your current settings are" 
    172 msgstr "Los parámetros actuales son" 
     160msgstr "Parámetros actuales" 
    173161 
    174162msgid "Destroy my database" 
    175163msgstr "Suprimir mi base de datos" 
    176164 
     165#, fuzzy 
    177166msgid "Create my main database" 
    178 msgstr "Crear mi base de datos principal" 
     167msgstr "Restaurar mi base de datos" 
    179168 
    180169msgid "Databases" 
     
    184173msgstr "Admin SQL" 
    185174 
    186 msgid "hlp_sql_bck" 
    187 msgstr "" 
    188 "Las copias de seguridad de su base de datos MySQL están almacenadas en el " 
    189 "directorio escogido bajo el nombre <code>db.sql.1</code> hasta <code>db." 
    190 "sql.19</code><br> donde 'db' está remplazado por el nombre de su base de " 
    191 "datos.<br>CUIDADO: si modifica los parámetros de copia de seguridad (número " 
    192 "de copias, compresión,...) algunas antiguas copias pueden permanecer en el " 
    193 "directorio. La puede borrar mediante el manejador de archivos." 
     175#, fuzzy 
     176msgid "Create a new database" 
     177msgstr "Crear un nuevo miembro" 
    194178 
    195 msgid "Create a new database" 
    196 msgstr "Crear una nueva base de datos" 
     179#, fuzzy 
     180msgid "Create this new database." 
     181msgstr "Crear la cuenta FTP." 
    197182 
    198 msgid "Create this new database." 
    199 msgstr "Crear esta nueva base de datos" 
    200  
     183#, fuzzy 
    201184msgid "Backup" 
    202 msgstr "Copia de seguridad" 
     185msgstr "Regresar" 
    203186 
    204187msgid "Restore" 
    205 msgstr "Restauración" 
    206  
    207 #~ msgid "Your database has been deleted" 
    208 #~ msgstr "Su base de datos ha sido borrada" 
     188msgstr "Restore" 
  • bureau/locales/es_ES/LC_MESSAGES/stats.po

    r166 r222  
    1 # translation of stats2.po to  
    2 # Spanish AlternC Translation 
    3 # Copyright (c) 2003 the AlternC Development Team 
    4 # <i18n@alternc.org> 
    5 # Bruno Marmier <bruno@marmier.net>, 2003 
    6 # 
     1# English AlternC Translation 
     2# Copyright (c) 2002 the AlternC Development Team 
     3# <tech@alternc.org> 
     4# $Id: stats.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $  
    75msgid "" 
    86msgstr "" 
    9 "Project-Id-Version: stats2\n" 
     7"Project-Id-Version: $Id: stats.po,v 1.8 2004/05/19 14:23:06 benjamin Exp $\n" 
    108"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    11 "PO-Revision-Date: 2003-09-30 16:48+0200\n" 
    12 "Last-Translator: Bruno Marmier <bruno@marmier.net>\n" 
    13 "Language-Team: <i18n@alternc.org>\n" 
     9"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     10"Last-Translator: Bruno <bruno@alternc.org>\n" 
     11"Language-Team: Espanol <i18n@alternc.org>\n" 
    1412"MIME-Version: 1.0\n" 
    1513"Content-Type: text/plain; charset=ISO-8859-1\n" 
    1614"Content-Transfer-Encoding: 8bit\n" 
    17 "X-Generator: KBabel 1.0.1\n" 
     15"X-Generator: Emacs 21\n" 
    1816 
    1917msgid "quota_stats" 
    20 msgstr "Estadísticas Web" 
     18msgstr "Web Statistics" 
    2119 
    2220# ################################################################# 
    23 # m_webaccess 
     21# m_stats 
    2422msgid "err_stats_1" 
    25 msgstr "No hay ningún juego de estadísticas." 
     23msgstr "No se consiguió ningún juego de estadísticas" 
    2624 
    2725msgid "err_stats_2" 
     
    2927 
    3028msgid "err_stats_3" 
    31 msgstr "El prefijo escogido no está permitido." 
     29msgstr "El prefijo escogido no está autorizado" 
    3230 
    3331msgid "err_stats_4" 
     
    4038 
    4139msgid "err_stats_6" 
    42 msgstr "Este idioma no está soportado." 
     40msgstr "Este idioma no está disponible." 
    4341 
     42#, fuzzy 
    4443msgid "err_stats_7" 
    45 msgstr "No hay ningún juego de estadísticas brutas." 
     44msgstr "Este idioma no está disponible." 
     45 
     46msgid "help_sta_list" 
     47msgstr "" 
     48"Aquí tiene la lista de los juegos de estatísticas installadas en su cuenta:" 
     49"<br /> Haga clic en 'Modificar' para cambiar la configuración de las " 
     50"estadísticas<br /> Para suprimir un juego de estadísticas, marque el cuadro " 
     51"correspondiente y haga clic en el botón 'Suprimir juegos marcados'" 
    4652 
    4753msgid "Web Statistics" 
     
    5561 
    5662msgid "New Statistics" 
    57 msgstr "Nuevo juega de estadísticas" 
     63msgstr "Creación de estadísticas" 
    5864 
    5965msgid "Language" 
     
    7076"manually deleted)" 
    7177msgstr "" 
    72 "El juego de estadísticas %s a sido borrado (los archivos de estadísticas " 
     78"El juego de estatísticas %s a sido borrado (los archivos de estatísticas " 
    7379"deben ser a manos)" 
    7480 
     
    97103msgstr "Crear un nuevo juego de estadísticas" 
    98104 
    99 msgid "help_sta_list" 
    100 msgstr "" 
    101 "Aquí tiene la lista de los juegos de estadísticas instaladas en su cuenta:" 
    102 "<br> Haga clic en 'Modificar' para cambiar la configuración de las " 
    103 "estadísticas<br> Para suprimir un juego de estadísticas, marque el cuadro " 
    104 "correspondiente y haga clic en el botón 'Suprimir juegos marcados'" 
    105  
    106105msgid "Delete the checked Statistics" 
    107106msgstr "Suprimir los juegos marcados" 
    108  
    109 msgid "Delete the checked Raw Statistics (apache)" 
    110 msgstr "Suprimir los juegos de estadísticas brutas (apache) marcados" 
    111  
    112 msgid "Change those Raw Statistics." 
    113 msgstr "Modificar estas estadísticas brutas." 
    114107 
    115108msgid "Byte" 
    116109msgstr "Byte" 
    117110 
     111#, fuzzy 
    118112msgid "Create new Raw Statistics (apache)" 
    119 msgstr "Crear un nuevo juego de estadísticas brutas (apache)" 
     113msgstr "Crear un nuevo juego de estadísticas" 
    120114 
     115#, fuzzy 
    121116msgid "Create those raw statistics" 
    122 msgstr "Crear estas estadísticas brutas" 
     117msgstr "Crear estas estadísticas" 
    123118 
     119#, fuzzy 
    124120msgid "New Raw Statistics (apache)" 
    125 msgstr "Nuevo juego de estadísticas brutas (apache)" 
     121msgstr "Creación de estadísticas" 
    126122 
    127 msgid "hlp_sta_list" 
    128 msgstr "" 
    129 "Un «juego de estadísticas» les permite pedir la creación diaria de página " 
    130 "html de estadísticas sobre la frecuentación, en la carpeta especificada.<br> " 
    131 "Estas estadísticas son aquellas del dominio o subdominio pedido, y serán " 
    132 "escritas en el idioma especificado.<br>Si ha creado un juego de estadísticas " 
    133 "hace más de 24 horas, haga clic sobre el enlace «ver» para llegar la página " 
    134 "de estadísticas.<br> Más información sobre las estadísticas en la ayuda en " 
    135 "línea HELPID_200<br>" 
    136  
     123#, fuzzy 
    137124msgid "hlp_sta_add" 
    138125msgstr "" 
    139 "Entre el nombre de dominio para el cual desea obtener las estadísticas.<br> " 
    140 "Escoge después el idioma en el cual las estadísticas deben ser presentadas." 
    141 "<br> Finalmente, especifique la carpeta de su espacio disco donde estas " 
    142 "estadísticas deben ser almacenadas (bajo la forma de página html y de " 
    143 "imágenes).<br> Se aconseja que esta carpeta sea accesible por uno de sus " 
    144 "dominios o subdominios. Además, puede proteger la carpeta con la ayuda del " 
    145 "menú «proteger carpeta»." 
     126"Entrez le nom du domaine dont vous souhaitez obtenir des statistiques de " 
     127"fréquentation. <br />Choisissez ensuite la langue dans laquelle ces " 
     128"statistiques devront etre générées. <br />Enfin, entrez le dossier de votre " 
     129"espace disque dans lequel ces statistiques devront etre stockées (sous forme " 
     130"de pages html + images).<br /> Il est conseillé que ce dossier soit accessible " 
     131"depuis l'un de vos domaines ou sous-domaines. De plus, vous pouvez protéger " 
     132"ce dossier à l'aide du menu 'dossiers protégés'." 
    146133 
    147134msgid "hlp_hta_list" 
    148135msgstr "" 
    149 "El menú 'carpetas protegidas' le permite proteger con una contraseña el " 
    150 "acceso a una carpeta web completa.<br>De esta manera, toda persona que " 
    151 "requiere acceder a estas páginas debe entrar el login y la contraseña." 
    152 "<br>Para proteger una carpeta, haga clic en 'Proteger carpeta'.<br>Después " 
    153 "se entrará las parejas login / contraseña autorizadas a acceder a la carpeta." 
    154 "<br> Más información sobre la protección de carpeta en la ayuda en línea " 
    155 "HELPID_200<br>" 
     136"Le menu 'dossiers protégés' vous permet de protéger par mot de passe l'accès " 
     137"à tout un dossier web.<br /> Ainsi, toute personne voulant accéder à ces pages " 
     138"devra entrer un nom d'utilisateur et un mot de passe valide.<br />Pour " 
     139"protéger un dossier, cliquez sur 'Protéger un dossier'. <br />Vous pourrez " 
     140"ensuite entrer les couples noms d'utilisateurs / mots de passe autorisés à " 
     141"accéder à ce dossier<br />Plus d'information sur les dossiers protégés dans " 
     142"l'aide en ligne HELPID_200<br />" 
    156143 
    157144msgid "hlp_hta_list2" 
    158145msgstr "" 
    159 "Haga clic en 'Modificar' para añadir o suprimir usuarios autorizados a leer " 
    160 "el contenido de la carpeta.<br> Para quitar la protección de una carpeta, " 
    161 "márquela y haga clic en el botón 'Quitar protección carpeta seleccionada'<br>" 
    162  
    163 msgid "French" 
    164 msgstr "Francés" 
    165  
    166 msgid "German" 
    167 msgstr "Alemán" 
    168  
    169 msgid "Spanish" 
    170 msgstr "Español" 
    171  
    172 msgid "English" 
    173 msgstr "Inglés" 
     146"Haga clic en 'Modificar' para añadir o suprimir usuarios autorizados a ler " 
     147"el contenido de la carpeta.<br /> Para quitar la protección de una carpeta, " 
     148"marquela y haga clic en el botón 'Quitar protección carpeta seleccionada'<br />" 
  • bureau/locales/fr_FR/LC_MESSAGES/mysql.po

    r186 r222  
    22# Copyright (c) 2002 the AlternC Development Team 
    33# <tech@alternc.org> 
    4 # $Id: mysql.po,v 1.6 2004/05/01 17:30:27 anonymous Exp $ 
     4# $Id: mysql.po,v 1.7 2004/05/19 14:23:06 benjamin Exp $ 
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: mysql.po,v 1.6 2004/05/01 17:30:27 anonymous Exp $\n" 
     7"Project-Id-Version: $Id: mysql.po,v 1.7 2004/05/19 14:23:06 benjamin Exp $\n" 
    88"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    99"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     
    7474msgid "Database" 
    7575msgstr "Base de données" 
    76  
    77 msgid "Database name" 
    78 msgstr "Nom de la base de données" 
    7976 
    8077msgid "Delete my SQL database" 
Note: See TracChangeset for help on using the changeset viewer.