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'].'", ' |