/** baz_mise_a_jour() - Mettre a jour une fiche * @global Le contenu du formulaire de saisie de l'annonce */ function baz_mise_a_jour_fiche($valeur) { $valeur = baz_requete_bazar_fiche($valeur); // on sauve les valeurs d'une fiche dans une PageWiki, pour garder l'historique $GLOBALS['wiki']->SavePage($valeur['id_fiche'], json_encode($valeur)); // Envoie d un mail aux administrateurs if (BAZ_ENVOI_MAIL_ADMIN) { include_once 'tools/contact/libs/contact.functions.php'; $lien = str_replace('/wakka.php?wiki=', '', $GLOBALS['wiki']->config['base_url']); $sujet = remove_accents('[' . str_replace('http://', '', $lien) . '] fiche modifiee : ' . $_POST['bf_titre']); $GLOBALS['_BAZAR_']['url']->addQueryString(BAZ_VARIABLE_VOIR, BAZ_VOIR_CONSULTER); $GLOBALS['_BAZAR_']['url']->addQueryString(BAZ_VARIABLE_ACTION, BAZ_VOIR_FICHE); $GLOBALS['_BAZAR_']['url']->addQueryString('id_fiche', $valeur['_BAZAR_']['id_fiche']); $text = 'Voir la fiche sur le site pour l\'administrer : ' . $GLOBALS['_BAZAR_']['url']->getUrl(); $texthtml = '<br /><br /><a href="' . $GLOBALS['_BAZAR_']['url']->getUrl() . '" title="Voir la fiche">Voir la fiche sur le site pour l\'administrer</a>'; $fichier = 'tools/bazar/presentation/styles/bazar.css'; $style = file_get_contents($fichier); $style = str_replace('url(', 'url(' . $lien . '/tools/bazar/presentation/', $style); $fiche = str_replace('src="tools', 'src="' . $lien . '/tools', baz_voir_fiche(0, $valeur['id_fiche'])) . $texthtml; $html = '<html><head><style type="text/css">' . $style . '</style></head><body>' . $fiche . '</body></html>'; //on va chercher les admins $requeteadmins = 'SELECT value FROM ' . $GLOBALS['wiki']->config['table_prefix'] . 'triples ' . 'WHERE resource="ThisWikiGroup:admins" AND property="http://www.wikini.net/_vocabulary/acls" LIMIT 1'; $ligne = $GLOBALS['wiki']->LoadSingle($requeteadmins); $tabadmin = explode("\n", $ligne['value']); foreach ($tabadmin as $line) { $admin = $GLOBALS['wiki']->LoadUser(trim($line)); send_mail(BAZ_ADRESSE_MAIL_ADMIN, BAZ_ADRESSE_MAIL_ADMIN, $admin['email'], $sujet, $text, $html); } } return $valeur; }
/** baz_mise_a_jour() - Mettre a jour une fiche * * @global Le contenu du formulaire de saisie de l'annonce * @return void */ function baz_mise_a_jour_fiche($valeur) { $valeur = array_merge(baz_valeurs_fiche($GLOBALS['_BAZAR_']['id_fiche']), $valeur); $valeur = baz_requete_bazar_fiche($valeur, $GLOBALS['_BAZAR_']['id_typeannonce']); //on sauve les valeurs d'une fiche dans une PageWiki, pour garder l'historique $GLOBALS["wiki"]->SavePage($GLOBALS['_BAZAR_']['id_fiche'], $valeur); // Envoie d un mail aux administrateurs if (BAZ_ENVOI_MAIL_ADMIN) { include_once 'Mail.php'; include_once 'Mail/mime.php'; $lien = str_replace("/wakka.php?wiki=", "", $GLOBALS['wiki']->config["base_url"]); $sujet = remove_accents('[' . str_replace("http://", "", $lien) . '] fiche modifiee : ' . $_POST['bf_titre']); $GLOBALS['_BAZAR_']['url']->addQueryString(BAZ_VARIABLE_VOIR, BAZ_VOIR_CONSULTER); $GLOBALS['_BAZAR_']['url']->addQueryString(BAZ_VARIABLE_ACTION, BAZ_VOIR_FICHE); $GLOBALS['_BAZAR_']['url']->addQueryString('id_fiche', $GLOBALS['_BAZAR_']['id_fiche']); $text = 'Voir la fiche sur le site pour l\'administrer : ' . $GLOBALS['_BAZAR_']['url']->getUrl(); $texthtml = '<br /><br /><a href="' . $GLOBALS['_BAZAR_']['url']->getUrl() . '" title="Voir la fiche">Voir la fiche sur le site pour l\'administrer</a>'; $fichier = 'tools/bazar/presentation/bazar.css'; $style = file_get_contents($fichier); $style = str_replace('url(', 'url(' . $lien . '/tools/bazar/presentation/', $style); $fiche = str_replace('src="tools', 'src="' . $lien . '/tools', baz_voir_fiche(0, $GLOBALS['_BAZAR_']['id_fiche'])) . $texthtml; $html = '<html><head><style type="text/css">' . $style . '</style></head><body>' . $fiche . '</body></html>'; $crlf = "\n"; $hdrs = array('From' => BAZ_ADRESSE_MAIL_ADMIN, 'Subject' => $sujet); $mime = new Mail_mime($crlf); $mime->setTXTBody($text); $mime->setHTMLBody($html); //do not ever try to call these lines in reverse order $body = $mime->get(); $hdrs = $mime->headers($hdrs); $mail =& Mail::factory('mail'); //on va chercher les admins $requeteadmins = 'SELECT value FROM ' . $GLOBALS['wiki']->config["table_prefix"] . 'triples WHERE resource="ThisWikiGroup:admins" AND property="http://www.wikini.net/_vocabulary/acls" LIMIT 1'; $resultatadmins = $GLOBALS['_BAZAR_']['db']->query($requeteadmins); $ligne = $resultatadmins->fetchRow(DB_FETCHMODE_ASSOC); $tabadmin = explode("\n", $ligne['value']); foreach ($tabadmin as $line) { $admin = $GLOBALS['wiki']->LoadUser(trim($line)); $mail->send($admin['email'], $hdrs, $body); } } return; }