Versione @0.2.1
6
config/db.php
Executable file
|
@ -0,0 +1,6 @@
|
|||
<?php
|
||||
$dbms_server="10.42.1.61";
|
||||
// $dbms_server="127.0.0.1";
|
||||
$dbms_port="3306";
|
||||
// $dbms_port="33306";
|
||||
?>
|
399
include/Database.c.php
Executable file
|
@ -0,0 +1,399 @@
|
|||
<?php
|
||||
define('ERR_DB_RES','0');
|
||||
define('ERR_DB_ERR','1');
|
||||
|
||||
require_once 'OExceptions.php';
|
||||
|
||||
/**
|
||||
* Wrapper per le funzioni di libreria php mysqli
|
||||
*
|
||||
* @author gine
|
||||
* @original author: Micah Carrick
|
||||
* @version: 1.1.1
|
||||
* @licence: GPL 2
|
||||
*
|
||||
*/
|
||||
class Database {
|
||||
/**
|
||||
* Ricordati di settarla a FALSE per tutti i programmi
|
||||
* in cui usi questa classe.
|
||||
*/
|
||||
private $debug=FALSE;
|
||||
|
||||
private static $m_pInstance = array();
|
||||
private $last_query; // last query executed.
|
||||
var $row_count; // last number of rows
|
||||
var $db_link; // current/last database link identifier
|
||||
private $auto_slashes; // the class will add/strip slashes when it can
|
||||
private $host, $user, $pw, $db, $port;
|
||||
/**
|
||||
* Costruttore della classe che si interfaccia con il dbms. Privata per via del Singleton.
|
||||
*
|
||||
* @param string $db
|
||||
*/
|
||||
private function Database($db) {
|
||||
$dbConfPath=dirname(__FILE__).'/../config/';
|
||||
|
||||
include($dbConfPath.'db.php');
|
||||
if ($db == "dns")
|
||||
include($dbConfPath.'smdns_db.php');
|
||||
elseif ($db == "db") {
|
||||
include($dbConfPath.'mysql_db.php');
|
||||
require_once dirname(__FILE__).'/../lib/terminal.php';
|
||||
$dbms_password=prompt_silent();
|
||||
} elseif ($db == "ot")
|
||||
include($dbConfPath.'ot_db.php');
|
||||
elseif($db == "std")
|
||||
include($dbConfPath.'config.php');
|
||||
|
||||
|
||||
$this->host = $dbms_server;
|
||||
$this->user = $dbms_user;
|
||||
$this->pw = $dbms_password;
|
||||
$this->db = $dbms_db;
|
||||
$this->port = $dbms_port;
|
||||
|
||||
$this->auto_slashes = true;
|
||||
|
||||
self::connect();
|
||||
}
|
||||
|
||||
/**
|
||||
* Singleton multiplo del costruttore della classe Database. Ritorna un istanza della classe.
|
||||
* $db può essere: ot, dns, db, ftp. Default: ot
|
||||
*
|
||||
* @param string $db
|
||||
* @return Mysqli_link $m_pInstance
|
||||
*/
|
||||
public static function getInstance($db='ot'){
|
||||
if (!isset(self::$m_pInstance[$db])){
|
||||
self::$m_pInstance[$db] = new Database($db);
|
||||
}
|
||||
|
||||
return self::$m_pInstance[$db];
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue la connect al dbms.
|
||||
* I parametri, se configurato il costruttore correttamente, sono opzionali. Ritorna un mysqli_link.
|
||||
*
|
||||
* Solleva un eccezione se ci sono problemi di connessione.
|
||||
*
|
||||
* @param url $host
|
||||
* @param string $user
|
||||
* @param string $pw
|
||||
* @param string $db
|
||||
* @param int $port
|
||||
* @throws DbErrException
|
||||
* @return Mysqli_link $db_link
|
||||
*
|
||||
*/
|
||||
function connect($host='', $user='', $pw='', $db='', $port='') {
|
||||
if (!empty($host)) $this->host = $host;
|
||||
if (!empty($user)) $this->user = $user;
|
||||
if (!empty($pw)) $this->pw = $pw;
|
||||
if (!empty($pw)) $this->port = $port;
|
||||
|
||||
$this->db_link = mysqli_init();
|
||||
mysqli_real_connect($this->db_link , $this->host, $this->user, $this->pw, $this->db, $this->port);
|
||||
if (!$this->db_link)
|
||||
$this->callException(_("Database connection problem"),E_DB_ERR);
|
||||
|
||||
return $this->db_link;
|
||||
}
|
||||
|
||||
private function setDebugErr($msg){
|
||||
$err['text']=$msg;
|
||||
$err['code']=0;
|
||||
|
||||
if($this->debug){
|
||||
$err['text'].="\n".$this->last_query;
|
||||
$err['code']=mysqli_errno($this->db_link);
|
||||
}
|
||||
|
||||
return $err;
|
||||
}
|
||||
|
||||
private function callException($msg,$e_type){
|
||||
$err=$this->setDebugErr($msg);
|
||||
if($e_type == ERR_DB_RES)
|
||||
throw new DbResException($err['text'],$err['code']);
|
||||
elseif($e_type == ERR_DB_ERR)
|
||||
throw new DbErrException($err['text'],$err['code']);
|
||||
else {
|
||||
die(_("what shit!"));
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Selezioziona il database ritorna TRUE se selezionato correttamente.
|
||||
* Solleva una Exception in caso di fallimento.
|
||||
*
|
||||
* @param string $db
|
||||
* @throws DbErrException
|
||||
* @return boolean
|
||||
*/
|
||||
function selectDb($db='') {
|
||||
if (!empty($db)) $this->db = $db;
|
||||
|
||||
if (!mysqli_select_db($this->db_link,$this->db))
|
||||
$this->callException(_("Database selection problem"),E_DB_ERR);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una SELECT espressa con una SqlQuery.
|
||||
* Utile quando non si conosce in numero di righe o colonne che potrebbero tornare.
|
||||
* Ritorna un oggetto mysqli_result. Solleva una eccezione sul fallimento.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbErrException
|
||||
* @return mixed
|
||||
*/
|
||||
function select($sql) {
|
||||
$this->last_query = $sql;
|
||||
|
||||
$r = mysqli_query($this->db_link,$sql);
|
||||
if (!$r)
|
||||
$this->callException(_("Query select error"),E_DB_ERR);
|
||||
|
||||
$this->row_count = mysqli_num_rows($r);
|
||||
|
||||
return $r;
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una SELECT il cui risultato deve essere 1 sola riga.
|
||||
* Ritorna la riga. Solleva un eccezzione DbResException altrimenti.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @param [String cMsg] : customMessage
|
||||
* @throws DbResException
|
||||
* @return mixed
|
||||
*/
|
||||
function selectOneRow($sql,$cMsg=NULL) {
|
||||
$msg=$sMsg=NULL;
|
||||
|
||||
$r = self::select($sql);
|
||||
if ($this->row_count > 1)
|
||||
$sMsg=_(" more than one result.");
|
||||
elseif ($this->row_count < 1)
|
||||
$sMsg=_(" query returned less than one result.");
|
||||
|
||||
if($sMsg!=NULL && $cMsg==NULL)
|
||||
$msg=_("Your query returned").$sMsg;
|
||||
elseif ($sMsg!=NULL && $cMsg != NULL)
|
||||
$msg=$cMsg;
|
||||
|
||||
if($msg!=NULL)
|
||||
$this->callException($msg,ERR_DB_RES);
|
||||
|
||||
return mysqli_fetch_row($r);
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una SELECT il cui risultato deve essere 1 sola cella.
|
||||
* Ritorna la cella. Solleva un eccezzione DbResException altrimenti.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return mixed
|
||||
*/
|
||||
function selectFirstRowFirstCell($sql) {
|
||||
$r = $this->select($sql);
|
||||
|
||||
if ($this->row_count > 1 or $this->row_count < 1)
|
||||
$this->callException(_("Your query returned more or less that one result."),ERR_DB_RES);
|
||||
|
||||
$ret = mysqli_fetch_row($r);
|
||||
|
||||
if ($this->auto_slashes)
|
||||
return stripslashes($ret[0]);
|
||||
else
|
||||
return $ret[0];
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una select il cui risultato deve essere un array composto da
|
||||
* una sola cella per riga. Solleva un eccezzione DbResException altrimenti.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return array
|
||||
*/
|
||||
function selectArrayOneElem($sql) {
|
||||
$arr=array();
|
||||
|
||||
$r= $this->select($sql);
|
||||
for ($i=0; $i<$this->row_count;$i++){
|
||||
$row=mysqli_fetch_row($r);
|
||||
if (isset($row[1]))
|
||||
$this->callException(_("Your query return more than 1 element for row."),ERR_DB_RES);
|
||||
|
||||
$arr[$i]=$row[0];
|
||||
}
|
||||
|
||||
return $arr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una select il cui risultato deve essere un array composto da
|
||||
* una $n celle per riga. Solleva un eccezzione DbResException altrimenti.
|
||||
* Se $n non è specificato non viene effettuato nessun controllo sul
|
||||
* numero di elementi per riga.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return array
|
||||
*/
|
||||
function selectArrayNElem($sql,$n=NULL) {
|
||||
$arr=array();
|
||||
|
||||
$r= $this->select($sql);
|
||||
for ($i=0; $i<$this->row_count;$i++){
|
||||
$row=mysqli_fetch_row($r);
|
||||
if($n!=NULL){
|
||||
if (isset($row[$n]))
|
||||
$this->callException(sprintf(_("Your query return more than %s element for row."),$n),ERR_RES);
|
||||
}
|
||||
$arr[$i]=$row;
|
||||
}
|
||||
|
||||
return $arr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Torna il numero di righe affette dalla query.
|
||||
* Da utilizzare con INSERT DELETE e UPDATE
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return int
|
||||
*/
|
||||
function execQuery($sql) {
|
||||
$this->last_query = $sql;
|
||||
|
||||
$r = mysqli_query($this->db_link,$sql);
|
||||
if (!$r)
|
||||
$this->callException(_("Query error"),ERR_DB_ERR);
|
||||
|
||||
return $this->row_count = mysqli_affected_rows($this->db_link);
|
||||
}
|
||||
|
||||
/**
|
||||
* Eseque una SqlQuery il cui risultato deve aver avuto effetto su 1 sola riga.
|
||||
* Ritorna TRUE o solleva una eccezione altrimenti.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @param [String cMsg] : customMessage
|
||||
* @throws DbResException
|
||||
* @return boolean
|
||||
*/
|
||||
function execQueryOneRow($sql,$cMsg=NULL) {
|
||||
$msg=$sMsg=NULL;
|
||||
|
||||
self::execQuery($sql);
|
||||
if ($this->row_count == 0)
|
||||
$sMsg=_("No row affected");
|
||||
elseif($this->row_count > 1)
|
||||
$sMsg=_("More than 1 row are affected");
|
||||
|
||||
if($sMsg!=NULL && $cMsg==NULL)
|
||||
$msg=$sMsg;
|
||||
elseif ($sMsg!=NULL && $cMsg != NULL)
|
||||
$msg=$cMsg;
|
||||
|
||||
if($msg!=NULL)
|
||||
$this->callException($msg,ERR_DB_RES);
|
||||
}
|
||||
|
||||
/**
|
||||
* Eseque una execQueryOneRow e ritorna l'ID della riga inserita.
|
||||
* Ottenuto tramite AUTOINCREMENT; comoda per le INSERT.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
*/
|
||||
function execQueryRetId($sql) {
|
||||
$this->execQueryOneRow($sql);
|
||||
|
||||
return mysqli_insert_id($this->db_link);
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una SELECT con $sql per verificare la presenza di un "id", se non esiste torna FALSE.
|
||||
* Altrimenti torna l'ID cercato con la select.
|
||||
* Se ritornano più risultati solleva un DbResException.
|
||||
*
|
||||
* @param SelectSqlQuery $sql
|
||||
* @return mixed
|
||||
*/
|
||||
function isThereAlready($sql){
|
||||
$id=FALSE;
|
||||
|
||||
$res=self::select($sql);
|
||||
if($this->row_count == 1){
|
||||
$row=mysqli_fetch_row($res);
|
||||
$id=$row[0];
|
||||
} elseif($this->row_count > 1 ) {
|
||||
$this->callException(_("Are present more than 1 row"),ERR_DB_RES);
|
||||
}
|
||||
|
||||
return $id;
|
||||
}
|
||||
|
||||
function escapeString($string){
|
||||
return mysqli_real_escape_string($this->db_link,$string);
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue un flush dei privilegi degli utenti mysql.
|
||||
* Serve per assicurare che le operazioni effettuate con altre funzioni,
|
||||
* come la creazione o la eliminazione di un utente, siano attive.
|
||||
*/
|
||||
function flushPrivileges(){
|
||||
self::execQuery("FLUSH PRIVILEGES");
|
||||
}
|
||||
/**
|
||||
* Se $debug è TRUE stampa la query $sql altrimenti tramite reflection esegue il metodo $action sulla query.
|
||||
*
|
||||
* @param boolean $debug TRUE|FALSE
|
||||
* @param String $action Metodi della Classe Database
|
||||
* @param SqlQuery $sql
|
||||
*/
|
||||
function sqlOrDebug($debug,$action,$sql){
|
||||
if (! $debug)
|
||||
self::$action($sql);
|
||||
else
|
||||
echo "DEBUG:OR: ".str_replace(array("\n","\r","\t","/\s\s+/"),"",$sql)."\n";
|
||||
}
|
||||
/**
|
||||
* Se $debug è FALSE esegue tramite reflection il metodo $action sulla query $sql, altrimenti stampa anche la query.
|
||||
*
|
||||
* @param boolean $debug TRUE|FALSE
|
||||
* @param String $action Metodi della Classe Database
|
||||
* @param SqlQuery $sql
|
||||
*/
|
||||
function sqlAndDebug($debug,$action,$sql){
|
||||
if ($debug)
|
||||
echo "DEBUG:AND: ".str_replace(array("\n","\r","\t","/\s\s+/"),"",$sql)."\n";
|
||||
|
||||
return self::$action($sql);
|
||||
}
|
||||
|
||||
/**
|
||||
* Ritorna l'ultimo errore ottenuto durante le azioni precedenti sul database.
|
||||
*/
|
||||
public function getLastError() {
|
||||
return $this->last_error;
|
||||
}
|
||||
|
||||
/**
|
||||
* Ritorna l'ultima query effettuata
|
||||
*/
|
||||
public function getLastQuery() {
|
||||
return $this->last_query;
|
||||
}
|
||||
}
|
||||
?>
|
381
include/Database.php
Executable file
|
@ -0,0 +1,381 @@
|
|||
<?php
|
||||
require_once 'OExceptions.php';
|
||||
|
||||
define('E_DB_RES','0');
|
||||
define('E_DB_ERR','1');
|
||||
|
||||
/**
|
||||
* Wrapper per le funzioni di libreria php mysqli
|
||||
*
|
||||
* @author gine
|
||||
* @original author: Micah Carrick
|
||||
* @version: 1.1
|
||||
* @licence: GPL 2
|
||||
*
|
||||
*/
|
||||
class Database {
|
||||
/**
|
||||
* Ricordati di settarla a FALSE per tutti i programmi
|
||||
* in cui usi questa classe.
|
||||
*/
|
||||
private $debug=FALSE;
|
||||
|
||||
private static $m_pInstance = array();
|
||||
private $last_query; // last query executed.
|
||||
var $row_count; // last number of rows
|
||||
var $db_link; // current/last database link identifier
|
||||
private $auto_slashes; // the class will add/strip slashes when it can
|
||||
private $host, $user, $pw, $db, $port;
|
||||
|
||||
/**
|
||||
* Costruttore della classe che si interfaccia con il dbms. Privata per via del Singleton.
|
||||
*
|
||||
* @param string $db
|
||||
*/
|
||||
private function Database($db) {
|
||||
$dbConfPath=dirname(__FILE__).'/../config/';
|
||||
|
||||
include($dbConfPath.'db.php');
|
||||
if ($db == "dns")
|
||||
include($dbConfPath.'smdns_db.php');
|
||||
elseif ($db == "db") {
|
||||
include($dbConfPath.'mysql_db.php');
|
||||
require_once dirname(__FILE__).'/../lib/terminal.php';
|
||||
$dbms_password=prompt_silent();
|
||||
} elseif ($db == "ot")
|
||||
include($dbConfPath.'ot_db.php');
|
||||
elseif($db == "std")
|
||||
include($dbConfPath.'config.php');
|
||||
|
||||
|
||||
$this->host = $dbms_server;
|
||||
$this->user = $dbms_user;
|
||||
$this->pw = $dbms_password;
|
||||
$this->db = $dbms_db;
|
||||
$this->port = $dbms_port;
|
||||
|
||||
$this->auto_slashes = true;
|
||||
|
||||
self::connect();
|
||||
}
|
||||
|
||||
/**
|
||||
* Singleton multiplo del costruttore della classe Database. Ritorna un istanza della classe.
|
||||
* $db può essere: ot, dns, db, ftp. Default: ot
|
||||
*
|
||||
* @param string $db
|
||||
* @return Mysqli_link $m_pInstance
|
||||
*/
|
||||
public static function getInstance($db='ot'){
|
||||
if (!isset(self::$m_pInstance[$db])){
|
||||
self::$m_pInstance[$db] = new Database($db);
|
||||
}
|
||||
|
||||
return self::$m_pInstance[$db];
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue la connect al dbms.
|
||||
* I parametri, se configurato il costruttore correttamente, sono opzionali. Ritorna un mysqli_link.
|
||||
*
|
||||
* Solleva un eccezione se ci sono problemi di connessione.
|
||||
*
|
||||
* @param url $host
|
||||
* @param string $user
|
||||
* @param string $pw
|
||||
* @param string $db
|
||||
* @param int $port
|
||||
* @throws DbErrException
|
||||
* @return Mysqli_link $db_link
|
||||
*
|
||||
*/
|
||||
function connect($host='', $user='', $pw='', $db='', $port='') {
|
||||
if (!empty($host)) $this->host = $host;
|
||||
if (!empty($user)) $this->user = $user;
|
||||
if (!empty($pw)) $this->pw = $pw;
|
||||
if (!empty($pw)) $this->port = $port;
|
||||
|
||||
$this->db_link = mysqli_init();
|
||||
mysqli_real_connect($this->db_link , $this->host, $this->user, $this->pw, $this->db, $this->port);
|
||||
if (!$this->db_link)
|
||||
$this->callException(_("Database connection problem."),E_DB_ERR);
|
||||
return $this->db_link;
|
||||
}
|
||||
|
||||
private function setDebugErr($msg){
|
||||
$err['text']=$msg;
|
||||
$err['code']=0;
|
||||
|
||||
if($this->debug){
|
||||
$err['text'].="\n".$this->last_query;
|
||||
$err['code']=mysqli_errno($this->db_link);
|
||||
}
|
||||
|
||||
return $err;
|
||||
}
|
||||
|
||||
private function callException($msg,$e_type){
|
||||
$err=$this->setDebugErr($msg);
|
||||
if($e_type == E_DB_RES)
|
||||
throw new DbResException($err['text'],$err['code']);
|
||||
elseif($e_type == E_DB_ERR)
|
||||
throw new DbErrException($err['text'],$err['code']);
|
||||
else {
|
||||
die(_("what shit?!"));
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Selezioziona il database ritorna TRUE se selezionato correttamente.
|
||||
* Solleva una Exception in caso di fallimento.
|
||||
*
|
||||
* @param string $db
|
||||
* @throws DbErrException
|
||||
* @return boolean
|
||||
*/
|
||||
function selectDb($db='') {
|
||||
if (!empty($db)) $this->db = $db;
|
||||
|
||||
if (!mysqli_select_db($this->db_link,$this->db))
|
||||
$this->callException(_("Database selection problem."),E_DB_ERR);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una SELECT espressa con una SqlQuery.
|
||||
* Utile quando non si conosce in numero di righe o colonne che potrebbero tornare.
|
||||
* Ritorna un oggetto mysqli_result. Solleva una eccezione sul fallimento.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbErrException
|
||||
* @return mixed
|
||||
*/
|
||||
function select($sql) {
|
||||
$this->last_query = $sql;
|
||||
|
||||
$r = mysqli_query($this->db_link,$sql);
|
||||
if (!$r)
|
||||
$this->callException(_("Query select error."),E_DB_ERR);
|
||||
|
||||
$this->row_count = mysqli_num_rows($r);
|
||||
|
||||
return $r;
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una SELECT il cui risultato deve essere 1 sola riga.
|
||||
* Ritorna la riga. Solleva un eccezzione DbResException altrimenti.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return mixed
|
||||
*/
|
||||
function selectOneRow($sql) {
|
||||
$oi=_("Your query returned ");
|
||||
$r = self::select($sql);
|
||||
|
||||
if ($this->row_count > 1)
|
||||
$this->callException($oi._("more than one result."),ERR_DB_RES);
|
||||
elseif ($this->row_count < 1)
|
||||
$this->callException($oi._("less than one result."),ERR_DB_RES);
|
||||
|
||||
return mysqli_fetch_row($r);
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una SELECT il cui risultato deve essere 1 sola cella.
|
||||
* Ritorna la cella. Solleva un eccezzione DbResException altrimenti.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return mixed
|
||||
*/
|
||||
function selectFirstRowFirstCell($sql) {
|
||||
$r = $this->select($sql);
|
||||
|
||||
if ($this->row_count > 1 or $this->row_count < 1)
|
||||
$this->callException(_("Your query returned more or less that one result."),ERR_DB_RES);
|
||||
|
||||
$ret = mysqli_fetch_row($r);
|
||||
|
||||
if ($this->auto_slashes)
|
||||
return stripslashes($ret[0]);
|
||||
else
|
||||
return $ret[0];
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una select il cui risultato deve essere un array composto da
|
||||
* una sola cella per riga. Solleva un eccezzione DbResException altrimenti.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return array
|
||||
*/
|
||||
function selectArrayOneElem($sql) {
|
||||
$arr=array();
|
||||
|
||||
$r= $this->select($sql);
|
||||
for ($i=0; $i<$this->row_count;$i++){
|
||||
$row=mysqli_fetch_row($r);
|
||||
if (isset($row[1]))
|
||||
$this->callException(_("Your query return more than 1 element for row."),ERR_DB_RES);
|
||||
|
||||
$arr[$i]=$row[0];
|
||||
}
|
||||
|
||||
return $arr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una select il cui risultato deve essere un array composto da
|
||||
* una $n celle per riga. Solleva un eccezzione DbResException altrimenti.
|
||||
* Se $n non è specificato non viene effettuato nessun controllo sul
|
||||
* numero di elementi per riga.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return array
|
||||
*/
|
||||
function selectArrayNElem($sql,$n=NULL) {
|
||||
$arr=array();
|
||||
|
||||
$r= $this->select($sql);
|
||||
for ($i=0; $i<$this->row_count;$i++){
|
||||
$row=mysqli_fetch_row($r);
|
||||
if($n!=NULL){
|
||||
if (isset($row[$n]))
|
||||
$this->callException(sprintf(_("Your query return more than %s element for row."),$n),ERR_RES);
|
||||
}
|
||||
$arr[$i]=$row;
|
||||
}
|
||||
|
||||
return $arr;
|
||||
}
|
||||
|
||||
/**
|
||||
* Torna il numero di righe affette dalla query.
|
||||
* Da utilizzare con INSERT DELETE e UPDATE
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return int
|
||||
*/
|
||||
function execQuery($sql) {
|
||||
$this->last_query = $sql;
|
||||
|
||||
$r = mysqli_query($this->db_link,$sql);
|
||||
if (!$r)
|
||||
$this->callException(_("Query error."),E_DB_ERR);
|
||||
|
||||
return $this->row_count = mysqli_affected_rows($this->db_link);
|
||||
}
|
||||
|
||||
/**
|
||||
* Eseque una SqlQuery il cui risultato deve aver avuto effetto su 1 sola riga.
|
||||
* Ritorna TRUE o solleva una eccezione altrimenti.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
* @throws DbResException
|
||||
* @return boolean
|
||||
*/
|
||||
function execQueryOneRow($sql) {
|
||||
self::execQuery($sql);
|
||||
if ($this->row_count == 0)
|
||||
$this->callException(_("No row affected."),ERR_RES);
|
||||
elseif($this->row_count > 1)
|
||||
$this->callException(_("More than 1 row are affected."),ERR_DB_RES);
|
||||
}
|
||||
|
||||
/**
|
||||
* Eseque una execQueryOneRow e ritorna l'ID della riga inserita.
|
||||
* Ottenuto tramite AUTOINCREMENT; comoda per le INSERT.
|
||||
*
|
||||
* @param SqlQuery $sql
|
||||
*/
|
||||
function execQueryRetId($sql) {
|
||||
$this->execQueryOneRow($sql);
|
||||
|
||||
return mysqli_insert_id($this->db_link);
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue una SELECT con $sql per verificare la presenza di un "id", se non esiste torna FALSE.
|
||||
* Altrimenti torna l'ID cercato con la select.
|
||||
* Se ritornano più risultati solleva un DbResException.
|
||||
*
|
||||
* @param SelectSqlQuery $sql
|
||||
* @return mixed
|
||||
*/
|
||||
function isThereAlready($sql){
|
||||
$id=FALSE;
|
||||
|
||||
$res=self::select($sql);
|
||||
if($this->row_count == 1){
|
||||
$row=mysqli_fetch_row($res);
|
||||
$id=$row[0];
|
||||
} elseif($this->row_count > 1 ) {
|
||||
$this->callException(_("Are present more than 1 row."),ERR_DB_RES);
|
||||
}
|
||||
|
||||
return $id;
|
||||
}
|
||||
|
||||
function escapeString($string){
|
||||
return mysqli_real_escape_string($this->db_link,$string);
|
||||
}
|
||||
|
||||
/**
|
||||
* Esegue un flush dei privilegi degli utenti mysql.
|
||||
* Serve per assicurare che le operazioni effettuate con altre funzioni,
|
||||
* come la creazione o la eliminazione di un utente, siano attive.
|
||||
*/
|
||||
function flushPrivileges(){
|
||||
self::execQuery("FLUSH PRIVILEGES");
|
||||
}
|
||||
/**
|
||||
* Se $debug è TRUE stampa la query $sql altrimenti tramite reflection esegue il metodo $action sulla query.
|
||||
*
|
||||
* @param boolean $debug TRUE|FALSE
|
||||
* @param String $action Metodi della Classe Database
|
||||
* @param SqlQuery $sql
|
||||
*/
|
||||
function sqlOrDebug($debug,$action,$sql){
|
||||
$debug=true;
|
||||
if (! $debug)
|
||||
return self::$action($sql);
|
||||
else
|
||||
echo "DEBUG:OR: ".str_replace(array("\n","\r","\t","/\s\s+/"),"",$sql)."\n";
|
||||
}
|
||||
/**
|
||||
* Se $debug è FALSE esegue tramite reflection il metodo $action sulla query $sql, altrimenti stampa anche la query.
|
||||
*
|
||||
* @param boolean $debug TRUE|FALSE
|
||||
* @param String $action Metodi della Classe Database
|
||||
* @param SqlQuery $sql
|
||||
*/
|
||||
function sqlAndDebug($debug,$action,$sql){
|
||||
$debug=true;
|
||||
if ($debug)
|
||||
echo "DEBUG:AND: ".str_replace(array("\n","\r","\t","/\s\s+/"),"",$sql)."\n";
|
||||
|
||||
return self::$action($sql);
|
||||
}
|
||||
|
||||
/**
|
||||
* Ritorna l'ultimo errore ottenuto durante le azioni precedenti sul database.
|
||||
*/
|
||||
public function getLastError() {
|
||||
return $this->last_error;
|
||||
}
|
||||
|
||||
/**
|
||||
* Ritorna l'ultima query effettuata
|
||||
*/
|
||||
public function getLastQuery() {
|
||||
return $this->last_query;
|
||||
}
|
||||
}
|
||||
?>
|
79
include/OExceptions.php
Executable file
|
@ -0,0 +1,79 @@
|
|||
<?php
|
||||
|
||||
interface IException
|
||||
{
|
||||
/* Protected methods inherited from Exception class */
|
||||
public function getMessage(); // Exception message
|
||||
public function getCode(); // User-defined Exception code
|
||||
public function getFile(); // Source filename
|
||||
public function getLine(); // Source line
|
||||
public function getTrace(); // An array of the backtrace()
|
||||
public function getTraceAsString(); // Formated string of trace
|
||||
|
||||
/* Overrideable methods inherited from Exception class */
|
||||
public function __toString(); // formated string for display
|
||||
public function __construct($message = null, $code = 0);
|
||||
}
|
||||
|
||||
abstract class CustomException extends Exception implements IException
|
||||
{
|
||||
private $trace; // Unknown
|
||||
private $string; // Unknown
|
||||
protected $message = 'Unknown exception'; // Exception message
|
||||
protected $code = 0; // User-defined exception code
|
||||
protected $file; // Source filename of exception
|
||||
protected $line; // Source line of exception
|
||||
|
||||
|
||||
public function __construct($message = null, $code = 0)
|
||||
{
|
||||
if (!$message) {
|
||||
throw new $this('Unknown '. get_class($this));
|
||||
}
|
||||
parent::__construct("Err: ".$message."\n", $code);
|
||||
}
|
||||
|
||||
public function __toString() {
|
||||
$err=$this->message;
|
||||
if($this->code!=0)
|
||||
$err= get_class($this).
|
||||
" '{$this->message}' in {$this->file}({$this->line})\n".
|
||||
"{$this->getTraceAsString()}";
|
||||
|
||||
return $err;
|
||||
}
|
||||
}
|
||||
|
||||
class DbErrException extends CustomException{};
|
||||
|
||||
class DbResException extends DbErrException{};
|
||||
|
||||
class UsageException extends CustomException{
|
||||
public function __construct($message = null, $code = 0)
|
||||
{
|
||||
if (!$message and $code == 0) {
|
||||
throw new $this('Unknown '. get_class($this));
|
||||
} elseif ($message != null and $code > 0) {
|
||||
$argv="Err: ".$message."\n";
|
||||
$message="Bad arg: ".$argv." is not a valid command, with ".$code." arguments\n";
|
||||
$code=0;
|
||||
}
|
||||
|
||||
parent::__construct($message, $code);
|
||||
}
|
||||
|
||||
public function __toString() {
|
||||
return $this->message;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class OtConfException extends CustomException{};
|
||||
|
||||
class FileException extends CustomException{
|
||||
public function __toString() {
|
||||
return $this->message;
|
||||
}
|
||||
};
|
||||
|
||||
?>
|
11
include/apteryx_text.php
Executable file
|
@ -0,0 +1,11 @@
|
|||
<?php
|
||||
$title_page = _("Accrocchio per creare alias di 24h per una propria email");
|
||||
$form_goto_email = _("email:");
|
||||
$title = _("Creatore di alias email giornalieri (24 ore)");
|
||||
$msgAliasDonePart1 = _("Per le prossime 24 ore tutte le mail che arriveranno a:");
|
||||
$msgAliasDonePart2 = _("verranno redirette a:");
|
||||
$msgAliasErr = _("Creazione dell'alias fallita. Forse hai scritto male i dati, riprova.");
|
||||
$msgAliasCant = _("Alias gia' esistente, riprova.");
|
||||
$msgEmailValidErr= _("Email non valida");
|
||||
$msgNoEmailFoundErr= _("Non esiste nessun alias per questa email");
|
||||
?>
|
112
include/localization.php
Executable file
|
@ -0,0 +1,112 @@
|
|||
<?php
|
||||
/* CHANGELOG:
|
||||
@1.1:
|
||||
- supporta locale con forma la_LA, la, la_LA.utf-8, la_LA.UTF-8, la.UTF-8, la.utf-8
|
||||
*/
|
||||
$version="1.1";
|
||||
|
||||
$_td_stack = array(); // text domains stack
|
||||
|
||||
$langarray = array('it_IT','en_US','es_ES','de_DE','eo_EO');
|
||||
//$lang = "eo_EO";
|
||||
If (isSet($_GET["lang"]))
|
||||
$lang = $_GET["lang"];
|
||||
else {
|
||||
$lang = $langarray[0];
|
||||
/* vedi le preferenze del browser */
|
||||
$user_langs = explode(",", getenv("HTTP_ACCEPT_LANGUAGE"));
|
||||
foreach ($user_langs as $user_lang) {
|
||||
$user_lang_items = explode(";", $user_lang);
|
||||
if (in_array($user_lang_items[0], $langarray)) {
|
||||
$lang = $user_lang_items[0];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$charset="UTF-8";
|
||||
$gettext_domain="messages";
|
||||
$locale_dir="res/locale";
|
||||
/**
|
||||
* Il locale deve essere presente nel sistema usa "locale -a" per
|
||||
* verificarlo, non ovunque si chiama allo stesso modo e non tutti
|
||||
* i locali si chiamano allo stesso modo, l'esperanto ad esempio
|
||||
* non rispetta la nomenclatura classica
|
||||
*/
|
||||
putenv("LC_ALL=$lang");
|
||||
$l=split("_",$lang);
|
||||
if(! setlocale(LC_ALL, $lang.".".$charset))
|
||||
if(! setlocale(LC_ALL, $lang))
|
||||
if(! setlocale(LC_ALL,$l[0].".".$charset))
|
||||
setlocale(LC_ALL,$l[0]);
|
||||
|
||||
bindtextdomain($gettext_domain, "res/locale");
|
||||
textdomain($gettext_domain);
|
||||
bind_textdomain_codeset($gettext_domain, $charset);
|
||||
|
||||
function printLangSelector() {
|
||||
global $lang;
|
||||
global $langarray;
|
||||
$targetname = $_SERVER['PHP_SELF'];
|
||||
|
||||
$l_arg="lang=";
|
||||
$newQueryString="";
|
||||
$queryString= $_SERVER['QUERY_STRING'];
|
||||
$argS = explode("&",$queryString);
|
||||
if(strpos($queryString,$l_arg)!==FALSE){
|
||||
foreach ($argS as $arg){
|
||||
if(strpos($arg,$l_arg)===FALSE)
|
||||
$newQueryString.=$arg."&";
|
||||
}
|
||||
}
|
||||
|
||||
echo "<ul class='langsel'>";
|
||||
foreach ($langarray as $l) {
|
||||
$label=split("_",$l);
|
||||
$class="";
|
||||
if ($l == $lang)
|
||||
$class="class='it'";
|
||||
|
||||
echo "<li ".$class."><a href='".$targetname."?".$newQueryString.$l_arg.$l."'>".$label[0]."</a></li>";
|
||||
}
|
||||
$foo = getenv("HTTP_ACCEPT_LANGUAGE");
|
||||
echo "</ul>\n";
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets a new text domain after recording the current one
|
||||
* so it can be restored later with restore_textdomain().
|
||||
*
|
||||
* It's possible to nest calls to these two functions.
|
||||
* @param string the new text domain to set
|
||||
*/
|
||||
function set_textdomain($td)
|
||||
{
|
||||
global $_td_stack;
|
||||
|
||||
$old_td = textdomain(NULL);
|
||||
|
||||
if ($old_td) {
|
||||
if (!strcmp($old_td, $td))
|
||||
array_push($_td_stack, false);
|
||||
else
|
||||
array_push($_td_stack, $old_td);
|
||||
}
|
||||
|
||||
textdomain($td);
|
||||
}
|
||||
|
||||
/**
|
||||
* Restore the text domain active before the last call to
|
||||
* set_textdomain().
|
||||
*/
|
||||
function restore_textdomain()
|
||||
{
|
||||
global $_td_stack;
|
||||
|
||||
$old_td = array_pop($_td_stack);
|
||||
|
||||
if ($old_td)
|
||||
textdomain($old_td);
|
||||
}
|
||||
?>
|
64
include/randomimg.php
Executable file
|
@ -0,0 +1,64 @@
|
|||
<?php
|
||||
$folder = '../res/images';
|
||||
$extList = array();
|
||||
$extList['gif'] = 'image/gif';
|
||||
$extList['jpg'] = 'image/jpeg';
|
||||
$extList['jpeg'] = 'image/jpeg';
|
||||
$extList['png'] = 'image/png';
|
||||
$img = null;
|
||||
|
||||
if (substr($folder,-1) != '/') {
|
||||
$folder = $folder.'/';
|
||||
}
|
||||
/*
|
||||
//DEBUG: eseguire direttamente lo script, altrimenti non si vede output
|
||||
var_dump($folder);
|
||||
$handle = opendir($folder);
|
||||
var_dump($handle);
|
||||
exit;
|
||||
*/
|
||||
if (isset($_GET['img'])) {
|
||||
$imageInfo = pathinfo($_GET['img']);
|
||||
if (
|
||||
isset( $extList[ strtolower( $imageInfo['extension'] ) ] ) &&
|
||||
file_exists( $folder.$imageInfo['basename'] )
|
||||
) {
|
||||
$img = $folder.$imageInfo['basename'];
|
||||
}
|
||||
} else {
|
||||
$fileList = array();
|
||||
$handle = opendir($folder);
|
||||
while ( false !== ( $file = readdir($handle) ) ) {
|
||||
$file_info = pathinfo($file);
|
||||
if (
|
||||
isset( $extList[ strtolower( $file_info['extension'] ) ] )
|
||||
) {
|
||||
$fileList[] = $file;
|
||||
}
|
||||
}
|
||||
closedir($handle);
|
||||
|
||||
if (count($fileList) > 0) {
|
||||
$imageNumber = time() % count($fileList);
|
||||
$img = $folder.$fileList[$imageNumber];
|
||||
}
|
||||
}
|
||||
|
||||
if ($img!=null) {
|
||||
$imageInfo = pathinfo($img);
|
||||
$contentType = 'Content-type: '.$extList[ $imageInfo['extension'] ];
|
||||
header ($contentType);
|
||||
readfile($img);
|
||||
} else {
|
||||
if ( function_exists('imagecreate') ) {
|
||||
header ("Content-type: image/png");
|
||||
$im = @imagecreate (100, 100)
|
||||
or die ("Cannot initialize new GD image stream");
|
||||
$background_color = imagecolorallocate ($im, 255, 255, 255);
|
||||
$text_color = imagecolorallocate ($im, 0,0,0);
|
||||
imagestring ($im, 2, 5, 5, "IMAGE ERROR", $text_color);
|
||||
imagepng ($im);
|
||||
imagedestroy($im);
|
||||
}
|
||||
}
|
||||
?>
|
68
include/template.php
Executable file
|
@ -0,0 +1,68 @@
|
|||
<?php
|
||||
include 'apteryx_text.php';
|
||||
|
||||
function printHead($type) {
|
||||
global $title_page;
|
||||
?>
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<!--<meta charset="UTF-8">-->
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
|
||||
<title><?php echo $title_page; ?></title>
|
||||
<link href='https://www.indivia.net/res/css/global.css' rel='stylesheet' type='text/css' >
|
||||
<link href='https://tools.indivia.net/chpw/res/css/default.css' rel='stylesheet' type='text/css' >
|
||||
<link href='res/css/apteryx.css' rel='stylesheet' type='text/css' >
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
if ($type == 0)
|
||||
echo '<div class="random"> </div>';
|
||||
else
|
||||
echo '<br><br>';
|
||||
|
||||
?>
|
||||
<div id="apteryx-box" class='homebox'>
|
||||
<?php
|
||||
}
|
||||
/* crea il form */
|
||||
function printForm($form_goto_email, $lang) {
|
||||
?>
|
||||
<form method='post' action='#'>
|
||||
<table class='formtable'>
|
||||
<tr>
|
||||
<td><?php echo "$form_goto_email" ?></td>
|
||||
<td><input type='text' name='email' size='32' class='field'></td>
|
||||
</tr>
|
||||
</table>
|
||||
<div style='text-align: center'>
|
||||
<input type='hidden' name='ph' value='1'>
|
||||
<input type='hidden' name='lang' value='<?php echo "$lang" ?>'>
|
||||
<input type='submit' value='Vai' class='gobutton'>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
|
||||
function printTitle($msg){ ?>
|
||||
<h1>
|
||||
<p style='text-align: center;'>
|
||||
<?php echo $msg ?>
|
||||
</p>
|
||||
</h1><?php
|
||||
}
|
||||
|
||||
function printBold($msg) {
|
||||
?>
|
||||
<p style='font-weight: bold; font-size: 120%; text-align: center;'><?php echo "$msg" ?></p><br>
|
||||
<?php
|
||||
}
|
||||
|
||||
function printMessage($msg) {
|
||||
?>
|
||||
<p style='text-align: center;'><?php echo "$msg" ?></p>
|
||||
|
||||
<?php
|
||||
}
|
||||
?>
|
85
include/util.php
Executable file
|
@ -0,0 +1,85 @@
|
|||
<?php
|
||||
function email_check($email) {
|
||||
$isValid=TRUE;
|
||||
$atIndex = strrpos($email, "@");
|
||||
if (is_bool($atIndex) && !$atIndex) {
|
||||
$isValid = FALSE;
|
||||
} else {
|
||||
$domain = substr($email, $atIndex+1);
|
||||
$local = substr($email, 0, $atIndex);
|
||||
$localLen = strlen($local);
|
||||
$domainLen = strlen($domain);
|
||||
//user troppo lungo
|
||||
if ($localLen < 1 || $localLen > 64) {
|
||||
$isValid = FALSE;
|
||||
//l'user incomincia o termina con un . o a 2 .. consecutivi
|
||||
} elseif ($local[0] == '.' || $local[$localLen-1] == '.' || consecutive_dot($local)) {
|
||||
$isValid = FALSE;
|
||||
} elseif (! isValidDomain($domain)) {
|
||||
$isValid = FALSE;
|
||||
} elseif(!preg_match('/^(\\\\.|[A-Za-z0-9!#%&`_=\\/$\'*+?^{}|~.-])+$/', str_replace("\\\\","",$local))) {
|
||||
// character not valid in local part unless
|
||||
// local part is quoted
|
||||
if (!preg_match('/^"(\\\\"|[^"])+"$/', str_replace("\\\\","",$local))) {
|
||||
$isValid = FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $isValid;
|
||||
}
|
||||
|
||||
function isValidDomain($domain) {
|
||||
$isValid=true;
|
||||
$domainLen = strlen($domain);
|
||||
|
||||
if ($domainLen < 4 || $domainLen > 255) {
|
||||
$isValid = FALSE;
|
||||
//l'user incomincia o termina con un . o a 2 .. consecutivi
|
||||
} elseif (consecutive_dot($domain) || $domain[0] == '.' || $domain[$domainLen-1] == '.' ) {
|
||||
$isValid = FALSE;
|
||||
} elseif (!preg_match('/^[A-Za-z0-9\\-\\.]+$/', $domain)) {
|
||||
$isValid = FALSE;
|
||||
//ha almeno un punto
|
||||
} elseif (! strpos($domain, ".")) {
|
||||
$isValid = FALSE;
|
||||
} else {
|
||||
//il dominio di primo livello è almeno 2 caratteri
|
||||
$arr=explode(".", $domain);
|
||||
if(strlen($arr[count($arr)-1])<2)
|
||||
$isValid = FALSE;
|
||||
}
|
||||
|
||||
return $isValid;
|
||||
}
|
||||
|
||||
function consecutive_dot($string) {
|
||||
$ret=false;
|
||||
|
||||
if(preg_match('/\\.\\./',$string))
|
||||
$ret=true;
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* estrae dominio di secondo livello
|
||||
*/
|
||||
function dom($name){
|
||||
$zon=explode(".",$name);
|
||||
return implode(".",array_slice($zon,-3));
|
||||
}
|
||||
|
||||
/* gets the data from a URL */
|
||||
function get_data($url) {
|
||||
$ch = curl_init();
|
||||
$timeout = 5;
|
||||
curl_setopt($ch, CURLOPT_URL, $url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
|
||||
$data = curl_exec($ch);
|
||||
curl_close($ch);
|
||||
|
||||
return $data;
|
||||
}
|
||||
?>
|
111
index.php
Executable file
|
@ -0,0 +1,111 @@
|
|||
<?php
|
||||
// https://uichi.ortiche.net/index.php/Strutture_dati_di_posta
|
||||
// version: 0.2
|
||||
require_once('include/Database.php');
|
||||
require_once('include/util.php');
|
||||
require_once('include/localization.php');
|
||||
require_once('include/template.php');
|
||||
|
||||
$err=$user=$email="";
|
||||
$type="-1";
|
||||
$rasplice_url="http://rasplice.contaminati.net/cgi-bin/rasplice.txt";
|
||||
$indivia24hdomain="@24h.indivia.net";
|
||||
$db=Database::getInstance('std');
|
||||
|
||||
function getSqlNumOfAlias($alias_tab,$alias_nic){
|
||||
$sql = "SELECT count(*)
|
||||
FROM $alias_tab
|
||||
WHERE user = '$alias_nic'
|
||||
AND active = 'Y'";
|
||||
return $sql;
|
||||
}
|
||||
|
||||
function getSqlCreateAlias($alias_tab, $alias_nic,$alias_dom,$goto_email,$timo){
|
||||
$sql = "INSERT INTO $alias_tab (user, domain, active, tipo, goto, modified, md5salt, deleted)
|
||||
VALUES ('$alias_nic', '$alias_dom', 'Y', 'alias', '$goto_email', '$timo','','0')";
|
||||
|
||||
return $sql;
|
||||
}
|
||||
|
||||
function getSqlAliasInfo($goto_email){
|
||||
$sql = "SELECT user
|
||||
FROM 24h_indivia_net
|
||||
WHERE goto = '$goto_email'
|
||||
AND active = 'Y'";
|
||||
|
||||
return $sql;
|
||||
}
|
||||
|
||||
//aliasing..
|
||||
if (isset($_POST["ph"]) AND
|
||||
$_POST["ph"]=="1" AND
|
||||
$_POST['email'] != "") {
|
||||
|
||||
$goto_email_noescape = $_POST['email'];
|
||||
$goto_email = $db->escapeString($goto_email_noescape);
|
||||
if (email_check($goto_email)) {
|
||||
//solo l'email alias deve non essere presente.
|
||||
do {
|
||||
$alias_nic = preg_replace('/\s+/', '', get_data($rasplice_url));
|
||||
if($alias_nic===FALSE)
|
||||
$alias_nic="email_".rand(10000,99999);
|
||||
$alias_dom = substr($indivia24hdomain,1);
|
||||
$alias_email = $alias_nic.$indivia24hdomain;
|
||||
$alias_dom2lvl = dom($alias_dom);
|
||||
$alias_tab = str_replace(".","_",$alias_dom2lvl);
|
||||
$res = $db->isThereAlready(getSqlNumOfAlias($alias_tab,$alias_nic));
|
||||
} while ($res != FALSE);
|
||||
|
||||
$timo=time();
|
||||
$ret=$db->execQuery(getSqlCreateAlias($alias_tab,$alias_nic,$alias_dom,$goto_email,$timo));
|
||||
if ($ret == 1) {
|
||||
header("location: index.php?ph=2&email=".$goto_email."&lang=".$lang);
|
||||
} else {
|
||||
$type=1;
|
||||
$err=$msgAliasErr;
|
||||
}
|
||||
} else {
|
||||
$type=1;
|
||||
$err=$msgEmailValidErr;
|
||||
}
|
||||
} elseif (isset($_GET["ph"]) AND
|
||||
$_GET['ph'] == 2 AND
|
||||
isset($_GET['email'])) {
|
||||
|
||||
$goto_email_noescape = $_GET['email'];
|
||||
$goto_email = $db->escapeString($goto_email_noescape);
|
||||
$rows = $db->select(getSqlAliasInfo($goto_email));
|
||||
$row = mysqli_fetch_row($rows);
|
||||
if ($row[0] != "") {
|
||||
$type=2;
|
||||
$user=$row[0];
|
||||
$email=$goto_email;
|
||||
} else {
|
||||
$type=1;
|
||||
$err=$msgNoEmailFoundErr;
|
||||
}
|
||||
} else {
|
||||
$type=0;
|
||||
}
|
||||
|
||||
if($type>-1) {
|
||||
printHead($type);
|
||||
printLangSelector();
|
||||
printTitle($title);
|
||||
switch ($type) {
|
||||
case 0:
|
||||
printForm($form_goto_email, $lang);
|
||||
break;
|
||||
case 1:
|
||||
printMessage($err);
|
||||
break;
|
||||
case 2:
|
||||
printMessage($msgAliasDonePart1).
|
||||
printBold($user.$indivia24hdomain).
|
||||
printMessage($msgAliasDonePart2).
|
||||
printBold($email);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
15
res/css/apteryx.css
Normal file
|
@ -0,0 +1,15 @@
|
|||
#apteryx-box{
|
||||
margin: 0 auto;
|
||||
padding-bottom:8px;
|
||||
width:38em;
|
||||
min-height:105px;
|
||||
}
|
||||
|
||||
div.random {
|
||||
margin-left:auto;
|
||||
margin-right:auto;
|
||||
margin-bottom:2em;
|
||||
width: 400px;
|
||||
height: 350px;
|
||||
background: url(../../include/randomimg.php) no-repeat center;
|
||||
}
|
10
res/file/CHANGELOG
Normal file
|
@ -0,0 +1,10 @@
|
|||
@0.2.1
|
||||
- Fix dell'url dell'import di un css
|
||||
- Fix del bug che comprometteva la creazione del nuovo alias
|
||||
@0.2
|
||||
- Utilizzo della Classe Wrapper Database realizzata inizialmente per OT
|
||||
- Modificato il sistema di internazionalizzazione per l'utilizzo di gettext()
|
||||
- Aggiunte le traduzioni in: italiano, inglese e parziale in esperanto
|
||||
- Revisione del modo in cui viene prodotto l'html e lo style css
|
||||
- Pulizia del codice e standardizzazione delle directory sul modello i*
|
||||
- Utilizzo di rasplice.contaminati.net per creare email con user più reale
|
2
res/file/TODO
Normal file
|
@ -0,0 +1,2 @@
|
|||
- finirire la traduzione in esperanto
|
||||
- tradurre in tedesco e spagnolo
|
BIN
res/images/orologio1.png
Executable file
After Width: | Height: | Size: 126 KiB |
BIN
res/images/orologio10.png
Executable file
After Width: | Height: | Size: 103 KiB |
BIN
res/images/orologio11.png
Executable file
After Width: | Height: | Size: 158 KiB |
BIN
res/images/orologio12.png
Executable file
After Width: | Height: | Size: 123 KiB |
BIN
res/images/orologio13.png
Executable file
After Width: | Height: | Size: 112 KiB |
BIN
res/images/orologio14.png
Executable file
After Width: | Height: | Size: 166 KiB |
BIN
res/images/orologio15.png
Executable file
After Width: | Height: | Size: 65 KiB |
BIN
res/images/orologio2.png
Executable file
After Width: | Height: | Size: 169 KiB |
BIN
res/images/orologio3.png
Executable file
After Width: | Height: | Size: 95 KiB |
BIN
res/images/orologio4.png
Executable file
After Width: | Height: | Size: 98 KiB |
BIN
res/images/orologio5.png
Executable file
After Width: | Height: | Size: 62 KiB |
BIN
res/images/orologio6.png
Executable file
After Width: | Height: | Size: 95 KiB |
BIN
res/images/orologio7.png
Executable file
After Width: | Height: | Size: 121 KiB |
BIN
res/images/orologio8.png
Executable file
After Width: | Height: | Size: 183 KiB |
BIN
res/images/orologio9.png
Executable file
After Width: | Height: | Size: 140 KiB |
53
res/locale/apteryx.pot
Normal file
|
@ -0,0 +1,53 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 0.2\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr ""
|
54
res/locale/en_US/LC_MESSAGES/apteryx.po
Normal file
|
@ -0,0 +1,54 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: 2013-04-12 14:12+0000\n"
|
||||
"Last-Translator: gin(e) <ginex@posta.indivia.net>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: en\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0-rc1\n"
|
||||
"X-POOTLE-MTIME: 1365775939.0\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr "Item to create an email alias for 24 hours "
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr "email:"
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr "Creator of daily email alias (24 hours)"
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr "For the next 24 hours all email sent to:"
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr "will redirect to:"
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr "Creation failed. Maybe you have written wrongs informations, retry."
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr "Alias already exits, retry."
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr "Invalid Email"
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr "There are no email alias for that email address"
|
BIN
res/locale/en_US/LC_MESSAGES/messages.mo
Normal file
111
res/locale/en_US/LC_MESSAGES/messages.po
Normal file
|
@ -0,0 +1,111 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: 2013-04-12 14:12+0000\n"
|
||||
"Last-Translator: gin(e) <ginex@posta.indivia.net>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: en\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0-rc1\n"
|
||||
"X-POOTLE-MTIME: 1365775939.0\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr "Item to create an email alias for 24 hours "
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr "email:"
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr "Creator of daily email alias (24 hours)"
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr "For the next 24 hours all email sent to:"
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr "will redirect to:"
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr "Creation failed. Maybe you have written wrongs informations, retry."
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr "Alias already exits, retry."
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr "Invalid Email"
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr "There are no email alias for that email address"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr "Database connection problem."
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr "what shit?!"
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr "Database selection problem."
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr "Query select error."
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr "Your query returned "
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr "more than one result."
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr "less than one result."
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr "Your query returned more or less that one result."
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr "Your query return more than 1 element for row."
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr "Your query return more than %s element for row."
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr "Query error."
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr "No row affected."
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr "More than 1 row are affected."
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr "Are present more than 1 row."
|
76
res/locale/en_US/LC_MESSAGES/otdblib.po
Normal file
|
@ -0,0 +1,76 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-08-16 15:53+0200\n"
|
||||
"PO-Revision-Date: 2013-08-16 14:49+0000\n"
|
||||
"Last-Translator: gin(e) <ginex@posta.indivia.net>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: en\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0\n"
|
||||
"X-POOTLE-MTIME: 1376664594.0\n"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr "Database connection problem."
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr "what shit?!"
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr "Database selection problem."
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr "Query select error."
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr "Your query returned "
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr "more than one result."
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr "less than one result."
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr "Your query returned more or less that one result."
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr "Your query return more than 1 element for row."
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr "Your query return more than %s element for row."
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr "Query error."
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr "No row affected."
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr "More than 1 row are affected."
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr "Are present more than 1 row."
|
54
res/locale/eo/LC_MESSAGES/apteryx.po
Normal file
|
@ -0,0 +1,54 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: 2013-04-12 14:00+0000\n"
|
||||
"Last-Translator: gin(e) <ginex@posta.indivia.net>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0-rc1\n"
|
||||
"X-POOTLE-MTIME: 1365775226.0\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr "Alternativilo por krei Aliasojn 24hore por propra retpoŝtadreso"
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr "Retpoŝtadreso:"
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr "Kreanto de retpoŝtaliasoj tuttage (24 horoj)"
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr "Por la proksimaj 24 horoj ĉiuj retpoŝtoj kiuj alvenos al:"
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr "estos alidirektonta al:"
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr "Aliaskreado fiaskis. Eble vi skribis datenojn nekorekte, reprovu."
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr "Aliaso jam ekzistas, reprovu."
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr "Nekorekta retpoŝtadreso"
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr "Neniu Aliaso ekzistas por tiu ĉi repoŝtadreso"
|
BIN
res/locale/eo/LC_MESSAGES/messages.mo
Normal file
112
res/locale/eo/LC_MESSAGES/messages.po
Normal file
|
@ -0,0 +1,112 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: 2013-04-12 14:00+0000\n"
|
||||
"Last-Translator: gin(e) <ginex@posta.indivia.net>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0-rc1\n"
|
||||
"X-POOTLE-MTIME: 1365775226.0\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr "Alternativilo por krei Aliasojn 24hore por propra retpoŝtadreso"
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr "Retpoŝtadreso:"
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr "Kreanto de retpoŝtaliasoj tuttage (24 horoj)"
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr "Por la proksimaj 24 horoj ĉiuj retpoŝtoj kiuj alvenos al:"
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr "estos alidirektonta al:"
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr "Aliaskreado fiaskis. Eble vi skribis datenojn nekorekte, reprovu."
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr "Aliaso jam ekzistas, reprovu."
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr "Nekorekta retpoŝtadreso"
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr "Neniu Aliaso ekzistas por tiu ĉi repoŝtadreso"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr ""
|
74
res/locale/eo/LC_MESSAGES/otdblib.po
Normal file
|
@ -0,0 +1,74 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-08-16 15:53+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Translate Toolkit 1.10.0\n"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr ""
|
54
res/locale/eo_EO/LC_MESSAGES/apteryx.po
Normal file
|
@ -0,0 +1,54 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: 2013-04-12 14:00+0000\n"
|
||||
"Last-Translator: gin(e) <ginex@posta.indivia.net>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0-rc1\n"
|
||||
"X-POOTLE-MTIME: 1365775226.0\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr "Alternativilo por krei Aliasojn 24hore por propra retpoŝtadreso"
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr "Retpoŝtadreso:"
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr "Kreanto de retpoŝtaliasoj tuttage (24 horoj)"
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr "Por la proksimaj 24 horoj ĉiuj retpoŝtoj kiuj alvenos al:"
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr "estos alidirektonta al:"
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr "Aliaskreado fiaskis. Eble vi skribis datenojn nekorekte, reprovu."
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr "Aliaso jam ekzistas, reprovu."
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr "Nekorekta retpoŝtadreso"
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr "Neniu Aliaso ekzistas por tiu ĉi repoŝtadreso"
|
BIN
res/locale/eo_EO/LC_MESSAGES/messages.mo
Normal file
112
res/locale/eo_EO/LC_MESSAGES/messages.po
Normal file
|
@ -0,0 +1,112 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: 2013-04-12 14:00+0000\n"
|
||||
"Last-Translator: gin(e) <ginex@posta.indivia.net>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0-rc1\n"
|
||||
"X-POOTLE-MTIME: 1365775226.0\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr "Alternativilo por krei Aliasojn 24hore por propra retpoŝtadreso"
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr "Retpoŝtadreso:"
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr "Kreanto de retpoŝtaliasoj tuttage (24 horoj)"
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr "Por la proksimaj 24 horoj ĉiuj retpoŝtoj kiuj alvenos al:"
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr "estos alidirektonta al:"
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr "Aliaskreado fiaskis. Eble vi skribis datenojn nekorekte, reprovu."
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr "Aliaso jam ekzistas, reprovu."
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr "Nekorekta retpoŝtadreso"
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr "Neniu Aliaso ekzistas por tiu ĉi repoŝtadreso"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr ""
|
74
res/locale/eo_EO/LC_MESSAGES/otdblib.po
Normal file
|
@ -0,0 +1,74 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-08-16 15:53+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: eo\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Translate Toolkit 1.10.0\n"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr ""
|
54
res/locale/it_IT/LC_MESSAGES/apteryx.po
Normal file
|
@ -0,0 +1,54 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: 2013-04-12 14:04+0000\n"
|
||||
"Last-Translator: Anonymous Pootle User\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: it\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0-rc1\n"
|
||||
"X-POOTLE-MTIME: 1365775488.0\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr "Accrocchio per creare alias di 24h per una propria email"
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr "email:"
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr "Creatore di alias email giornalieri (24 ore)"
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr "verranno redirette a:"
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr "Alias gia' esistente, riprova."
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr "Email non valida"
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr "Non esiste nessun alias per questa email"
|
BIN
res/locale/it_IT/LC_MESSAGES/messages.mo
Normal file
112
res/locale/it_IT/LC_MESSAGES/messages.po
Normal file
|
@ -0,0 +1,112 @@
|
|||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: 2013-04-12 14:04+0000\n"
|
||||
"Last-Translator: Anonymous Pootle User\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: it\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0-rc1\n"
|
||||
"X-POOTLE-MTIME: 1365775488.0\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr "Accrocchio per creare alias di 24h per una propria email"
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr "email:"
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr "Creatore di alias email giornalieri (24 ore)"
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr "verranno redirette a:"
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr "Alias gia' esistente, riprova."
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr "Email non valida"
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr "Non esiste nessun alias per questa email"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr "Non è possibile connettersi al dbms."
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr "ma che cazzo?!"
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr "Problema nella selezione del database."
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr "Errore nell'interrogazione del database."
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr "L'interrogazione effettuata è tornata con "
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr "più di un risultato."
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr "meno di un risultato."
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr "L'interrogazione effettuata è tornata con più o meno di un risultato."
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr "L'interrogazione è tornata con più di un attributo per riga."
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr "L'interrogazione è tornata con più %s attributi per riga."
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr "Errore nell'esecuzione di una query."
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr "Nessuna riga alterata."
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr "Più di una riga alterata."
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr "Sono presenti più di una riga."
|
76
res/locale/it_IT/LC_MESSAGES/otdblib.po
Normal file
|
@ -0,0 +1,76 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-08-16 15:53+0200\n"
|
||||
"PO-Revision-Date: 2013-08-16 14:29+0000\n"
|
||||
"Last-Translator: gin(e) <ginex@posta.indivia.net>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: it\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Pootle 2.5.0\n"
|
||||
"X-POOTLE-MTIME: 1376663369.0\n"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr "Non è possibile connettersi al dbms."
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr "ma che cazzo?!"
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr "Problema nella selezione del database."
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr "Errore nell'interrogazione del database."
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr "L'interrogazione effettuata è tornata con "
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr "più di un risultato."
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr "meno di un risultato."
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr "L'interrogazione effettuata è tornata con più o meno di un risultato."
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr "L'interrogazione è tornata con più di un attributo per riga."
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr "L'interrogazione è tornata con più %s attributi per riga."
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr "Errore nell'esecuzione di una query."
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr "Nessuna riga alterata."
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr "Più di una riga alterata."
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr "Sono presenti più di una riga."
|
117
res/locale/messages.pot
Normal file
|
@ -0,0 +1,117 @@
|
|||
# #-#-#-#-# apteryx.pot (0.2) #-#-#-#-#
|
||||
# apteryx.indivia.net
|
||||
# This file is distributed under the same license as the "iApteryx" package.
|
||||
# gin(e) <gine@riseup.net>, 2013
|
||||
#
|
||||
# #-#-#-#-# otdblib.pot (1.2) #-#-#-#-#
|
||||
# OTDbLib template translation.
|
||||
# Copyright (C) 2013.
|
||||
# This file is distributed under the same license as the OTDbLib package.
|
||||
# gin(e) <gine@riseup.net>, 2013.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 0.2\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-02-24 13:14+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: ../../include/apteryx_text.php:2
|
||||
msgid "Accrocchio per creare alias di 24h per una propria email"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:3
|
||||
msgid "email:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:4
|
||||
msgid "Creatore di alias email giornalieri (24 ore)"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:5
|
||||
msgid "Per le prossime 24 ore tutte le mail che arriveranno a:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:6
|
||||
msgid "verranno redirette a:"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:7
|
||||
msgid "Creazione dell'alias fallita. Forse hai scritto male i dati, riprova."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:8
|
||||
msgid "Alias gia' esistente, riprova."
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:9
|
||||
msgid "Email non valida"
|
||||
msgstr ""
|
||||
|
||||
#: ../../include/apteryx_text.php:10
|
||||
msgid "Non esiste nessun alias per questa email"
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr ""
|
75
res/locale/otdblib.pot
Normal file
|
@ -0,0 +1,75 @@
|
|||
# OTDbLib template translation.
|
||||
# Copyright (C) 2013.
|
||||
# This file is distributed under the same license as the OTDbLib package.
|
||||
# gin(e) <gine@riseup.net>, 2013.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 1.2\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2013-08-16 15:53+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: Database.php:98
|
||||
msgid "Database connection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:122
|
||||
msgid "what shit?!"
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:139
|
||||
msgid "Database selection problem."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:158
|
||||
msgid "Query select error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:174
|
||||
msgid "Your query returned "
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:178
|
||||
msgid "more than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:180
|
||||
msgid "less than one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:197
|
||||
msgid "Your query returned more or less that one result."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:222
|
||||
msgid "Your query return more than 1 element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:248
|
||||
#, php-format
|
||||
msgid "Your query return more than %s element for row."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:269
|
||||
msgid "Query error."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:285
|
||||
msgid "No row affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:287
|
||||
msgid "More than 1 row are affected."
|
||||
msgstr ""
|
||||
|
||||
#: Database.php:318
|
||||
msgid "Are present more than 1 row."
|
||||
msgstr ""
|