Subversion Repositories Applications.papyrus

Compare Revisions

Ignore whitespace Rev 1292 → Rev 1293

/trunk/client/integrateur_wikini/bibliotheque/adwi_wikini.fonct.php
21,7 → 21,7
// | along with Foobar; if not, write to the Free Software |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
// +------------------------------------------------------------------------------------------------------+
// CVS : $Id: adwi_wikini.fonct.php,v 1.10 2006-10-05 08:56:12 florian Exp $
// CVS : $Id: adwi_wikini.fonct.php,v 1.11 2007-04-06 08:40:13 neiluj Exp $
/**
* Contient les fonctions de l'application gestion des Wikini
*
35,7 → 35,7
//Autres auteurs :
*@author Aucun
*@copyright Tela-Botanica 2000-2004
*@version $Revision: 1.10 $
*@version $Revision: 1.11 $
// +------------------------------------------------------------------------------------------------------+
*/
 
77,9 → 77,10
require_once ADWI_CHEMIN_BIBLIOTHEQUE_PEAR.'Net/FTP.php';
// création de l'objet pear ftp
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT) or die("Impossible de se connecter par FTP !");
// création de la connexion
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT) or die("Impossible de se connecter par FTP !");
// identification
$ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
139,7 → 140,6
return ;
}
 
 
$ligne = $resultat->fetchRow (DB_FETCHMODE_OBJECT) ;
$resultat->free();
unset ($requete, $resultat);
175,6 → 175,52
return $tableau_retour ;
}
 
// merci PHP 5 ...
function mb_str_split($str, $length = 1) {
if ($length < 1) return FALSE;
 
$result = array();
 
for ($i = 0; $i < strlen($str); $i += $length) {
$result[] = substr($str, $i, $length);
}
 
return $result;
}
//
function remove_accents( $string )
{
$string = htmlentities($string);
return preg_replace("/&([a-z])[a-z]+;/i","$1",$string);
}
 
function genere_nom_wiki($nom, $spaces = FALSE)
{
// traitement des accents
$nom = remove_accents($nom);
$temp = mb_str_split($nom);
$count = 0;
$final = NULL;
foreach($temp as $letter)
{
if(preg_match('/([[:space:]]|[[:punct:]])/', $letter))
{
$final .= ($spaces ? '_' : '');
} elseif(preg_match ('/[a-zA-Z0-9]/', $letter)) {
$final .= (($count == 0 || $count == (strlen($nom) - 1)) ? strtoupper($letter) : strtolower($letter));
}
$count++;
}
// vérifions que le retour n'est pas uniquement un underscore
if(preg_match('/^[[:punct:]]+$/', $final)) return FALSE;
 
// sinon retour du nom formaté
return($final);
}
 
/**
*
* C du CRUD
182,7 → 228,12
*/
 
 
function insertion ($valeur, &$db) {
function insertion ($valeur, &$db) {
// --julien pour noms wiki
$valeur['code_alpha_wikini'] = genere_nom_wiki($valeur['code_alpha_wikini'], TRUE);
 
// Calcul dernier identifiant
$id_wikini_bdd = SQL_obtenirNouveauId ($db, 'gen_wikini', 'gewi_id_wikini') ;
$requete = "insert into gen_wikini set gewi_id_wikini ="
198,9 → 249,9
require_once ADWI_CHEMIN_BIBLIOTHEQUE_PEAR.'Net/FTP.php';
 
// création de l'objet pear ftp
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT);
$objet_pear_ftp = new Net_FTP(PAP_FTP_SERVEUR, PAP_FTP_PORT) or die("Connexion FTP Impossible !");
// création de la connexion
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT);
$ftp_conn = $objet_pear_ftp->connect(PAP_FTP_SERVEUR, PAP_FTP_PORT) or die("Connexion FTP Impossible !");
// identification
$ftp_login_result = $objet_pear_ftp->login(PAP_FTP_UTILISATEUR, PAP_FTP_MOT_DE_PASSE);
209,16 → 260,16
$message = '<p class="pap_erreur"> ERREUR Papyrus admin : impossible de se connecter par ftp.<br />'.
'Serveur : '. PAP_FTP_SERVEUR .'<br />'.
'Utilisateur : '. PAP_FTP_UTILISATEUR .'<br />'.
'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
// 'Erreur connexion : '.$ftp_conn->getMessage().'<br />'.
'Erreur login : '.$ftp_login_result->getMessage().'<br />'.
'Ligne n° : '. __LINE__ .'<br />'.
'Fichier n° : '. __FILE__ .'<br /><p>';
print $message;
}
$objet_pear_ftp->mkdir(PAP_FTP_RACINE.ADWI_CHEMIN_WIKINI.$valeur['code_alpha_wikini']) ;
$objet_pear_ftp->mkdir(PAP_FTP_RACINE.ADWI_CHEMIN_WIKINI) ;
$chemin_wikini_bibliotheque = ADWI_CHEMIN_BIBLIOTHEQUE_WIKINI;
$chemin_wikini = PAP_FTP_RACINE.ADWI_CHEMIN_WIKINI.$valeur['code_alpha_wikini'].GEN_SEP;
$chemin_wikini = PAP_FTP_RACINE.ADWI_CHEMIN_WIKINI.genere_nom_wiki($valeur['code_alpha_wikini'], TRUE).GEN_SEP;
// Overwrite = fale (3eme parametre)
$resultat = $objet_pear_ftp->putRecursive($chemin_wikini_bibliotheque, $chemin_wikini, false, FTP_BINARY);
250,7 → 301,7
if ((!isset($valeur['table_prefix'])) || (empty($config_wikini['$valeur']))) {
$valeur['table_prefix'] = $valeur['code_alpha_wikini'];
}
$g_wikini->creation_tables($valeur['table_prefix']);
$g_wikini->creation_tables($valeur['table_prefix'], $valeur['page']);
// Creation Wakka.config.php
271,8 → 322,8
'mysql_user' => $config_wikini['bdd_utilisateur'],
'mysql_password' => $config_wikini['bdd_mdp'],
'table_prefix' => $config_wikini['table_prefix'],
'root_page' => $config_wikini['page'],
'wakka_name' => $config_wikini['code_alpha_wikini'],
'root_page' => $valeur['page'],
'wakka_name' => str_replace("_", " ", $valeur['code_alpha_wikini']),
'base_url' => $config_base_url,
'rewrite_mode' => '0',
'meta_keywords' => '',
308,7 → 359,7
 
 
$fichier_config_source = $tempfn;
$fichier_config_cible = PAP_FTP_RACINE.ADWI_CHEMIN_WIKINI.$valeur['code_alpha_wikini'].GEN_SEP."wakka.config.php";
$fichier_config_cible = PAP_FTP_RACINE.ADWI_CHEMIN_WIKINI.genere_nom_wiki($valeur['code_alpha_wikini'], TRUE).GEN_SEP."wakka.config.php";
$resultat = $objet_pear_ftp->put($fichier_config_source, $fichier_config_cible, false, FTP_BINARY);
352,7 → 403,7
*/
 
function requete_wikini (&$valeur) {
return 'gewi_code_alpha_wikini ="'.$valeur['code_alpha_wikini'].'", '
return 'gewi_code_alpha_wikini ="'.genere_nom_wiki($valeur['code_alpha_wikini'], TRUE).'", '
.'gewi_bdd_hote ="'.$valeur['bdd_hote'].'", '
.'gewi_bdd_nom="'.$valeur['bdd_nom'].'", '
.'gewi_bdd_utilisateur ="'.$valeur['bdd_utilisateur'].'", '