Subversion Repositories Applications.wikini

Compare Revisions

Ignore whitespace Rev 45 → Rev 46

/trunk/tools/handlers/desc.xml
2,8 → 2,5
<plugin name="handlers" version="0.1" active="1">
<author>Jean-Pascal MILCENT</author>
<label>Handlers supplementaires</label>
<desc>Plugin fournissant de nouveaux handlers a Wikini :
- raw_html : affiche le contenu du body de la page wikini au format html dans une page html de base (utile pour les iFrame)
- raw_html_txt : affiche le contenu du body de la page wikini au format html. Le html n'est pas interprété par le navigateur car il est envoyé avec l'entête text/plain. Utile pour
</desc>
<desc>Plugin fournissant de nouveaux handlers a Wikini.</desc>
</plugin>
/trunk/tools/handlers/index.php
1,6 → 1,8
<?php
// Administration
 
// Vérification de sécurité
if (!defined("TOOLS_MANAGER")) {
die ("accés direct interdit");
die ("acc&egrave;s direct interdit");
}
?>
/trunk/tools/handlers/handlers/page/deletepage.php
New file
0,0 → 1,110
<?php
/*
$Id: deletepage.php 858 2007-11-22 00:46:30Z nepote $
Copyright 2002 David DELON
Copyright 2003 Eric FELDSTEIN
Copyright 2004 Jean Christophe ANDRÉ
Copyright 2006 Didier Loiseau
Copyright 2007 Charles NÉPOTE
Copyright 2013 Jean-Pascal MILCENT
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
 
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
 
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
 
// Vérification de sécurité
if (!defined('WIKINI_VERSION'))
{
die ('Accès direct interdit');
}
print_r($_POST);
if ($this->UserIsOwner() || $this->UserIsAdmin())
{
$deletePage = false;
$tag = $this->GetPageTag();
if ($this->IsOrphanedPage($this->GetPageTag()))
{
if ($_POST['confirme'] == 'Oui') {
$deletePage = true;
}
else
{
$pageLink = $this->Link($tag);
$actionLink = $this->Href('deletepage');
$cancelLink = $this->Href();
 
$msg .= '<form action="'.$actionLink.'" method="post" style="display: inline">'."\n".
'<p class="alert alert-warning">Voulez-vous supprimer définitivement la page '.$pageLink.' &nbsp;?<br/>'."\n".
'<button class="btn btn-danger" name="confirme" value="Oui" type="submit">Oui</button>'."\n".
'<a class="btn" href="'.$cancelLink.'">Non</a>'."\n".
'</p>'."\n".
'</form>'."\n";
}
}
else
{
if ($_POST['confirme'] == 'Oui') {
$deletePage = true;
}
else
{
$pageTag = $this->GetPageTag();
$tablePrefix = $this->config["table_prefix"];
$query = "SELECT DISTINCT from_tag ".
"FROM {$tablePrefix}links ".
"WHERE to_tag = '$pageTag'";
$linkedFrom = $this->LoadAll($query);
$pageLink = $this->ComposeLinkToPage($this->tag, "", "", 0);
 
$msg = '<p><em>Cette page n\'est pas orpheline.</em></p>'."\n".
'<p>Pages ayant un lien vers '.$pageLink.' :</p>'."\n".
'<ul>'."\n";
foreach ($linkedFrom as $page)
{
$currentPageLink = $this->ComposeLinkToPage($page['from_tag'], '', '', 0);
$msg .= '<li>'.$currentPageLink.'</li>'."\n";
}
$msg .= '</ul>'."\n";
 
if ($this->UserIsAdmin()) {
$actionLink = $this->Href('deletepage');
$cancelLink = $this->Href();
$msg .= '<form action="'.$actionLink.'" method="post" style="display: inline">'."\n".
'<p class="alert alert-warning">En tant qu\'administrateur, vous pouvez supprimer malgré tout la page.<br/>'.
'Cela laissera des liens de type "page à créer" dans les pages listées ci-dessus.<br/>'.
'Voulez-vous supprimer définitivement la page '.$pageLink.' &nbsp;?<br/>'."\n".
'<button class="btn btn-danger" name="confirme" value="Oui" type="submit">Oui</button>'."\n".
'<a class="btn" href="'.$cancelLink.'">Non</a>'."\n".
'</p>'."\n".
'</form>'."\n";
}
}
}
 
if ($deletePage == true) {
$this->DeleteOrphanedPage($tag);
$this->LogAdministrativeAction($this->GetUserName(), "Suppression de la page ->\"\"" . $tag . "\"\"");
$msg = '<p class="alert alert-info">'."La page ${tag} a été définitivement supprimée.".'</p>';
}
}
else
{
$msg = '<p class="alert alert-warning"><em>'."Vous n'êtes pas le propriétaire de cette page.".'</em></p>'."\n";
}
 
echo $this->Header();
echo '<div class="page">'."\n";
echo $msg;
echo '</div>'."\n";
echo $this->Footer();
?>
/trunk/tools/handlers/handlers/page/raw_html_txt.php
1,19 → 1,19
<?php
// declare(encoding='UTF-8');
// declare(encoding='ISO-8859-1');
/**
* Handler renvoyant au navigateur le contenu HTML de la page wiki avec un type mime text/plain.
*
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
*/
 
 
//Vérification de sécurité
//Vérification de sécurité
if (!eregi("wakka.php", $_SERVER['PHP_SELF'])) {
die ("Acc&eacute;s direct interdit");
}
/trunk/tools/handlers/handlers/page/raw_html.php
1,40 → 1,40
<?php
// declare(encoding='UTF-8');
/**
* Handler renvoyant au navigateur le contenu HTML de la page wiki.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
*/
 
 
//Vérification de sécurité
if (!eregi("wakka.php", $_SERVER['PHP_SELF'])) {
die ("Acc&eacute;s direct interdit");
}
if ($this->HasAccess("read")) {
if (!$this->page) {
return;
} else {
header("Content-type: text/html");
// Affichage de la page HTML
$html = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'."\n";
$html .= '<html>'."\n";
$html .= ' <head>'."\n";
$html .= ' <title>'.$this->GetPageTag().'</title>'."\n";
$html .= ' </head>'."\n";
$html .= ' <body>'."\n";
$html .= $this->Format($this->page["body"], "wakka");
$html .= ' </body>'."\n";
$html .= '</html>';
echo $html;
}
} else {
return;
}
<?php
// declare(encoding='ISO-8859-1');
/**
* Handler renvoyant au navigateur le contenu HTML de la page wiki.
*
* @category PHP 5.2
* @package Framework
* @author Jean-Pascal MILCENT <jpm@tela-botanica.org>
* @copyright Copyright (c) 2009, Tela Botanica (accueil@tela-botanica.org)
* @license http://www.gnu.org/licenses/gpl.html Licence GNU-GPL-v3
* @license http://www.cecill.info/licences/Licence_CeCILL_V2-fr.txt Licence CECILL-v2
* @version $Id$
*/
 
 
//Vérification de sécurité
if (!eregi("wakka.php", $_SERVER['PHP_SELF'])) {
die ("Acc&eacute;s direct interdit");
}
if ($this->HasAccess("read")) {
if (!$this->page) {
return;
} else {
header("Content-type: text/html");
// Affichage de la page HTML
$html = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'."\n";
$html .= '<html>'."\n";
$html .= ' <head>'."\n";
$html .= ' <title>'.$this->GetPageTag().'</title>'."\n";
$html .= ' </head>'."\n";
$html .= ' <body>'."\n";
$html .= $this->Format($this->page["body"], "wakka");
$html .= ' </body>'."\n";
$html .= '</html>';
echo $html;
}
} else {
return;
}
?>