This page lists files in the current directory. You can view content, get download/execute commands for Wget, Curl, or PowerShell, or filter the list using wildcards (e.g., `*.sh`).
wget 'https://lists2.roe3.org/guppy/.htaccess'
AddDefaultCharset UTF-8
<IfModule mod_headers.c>
Header set X-XSS-Protection "1; mode=block"
</IfModule>
### Blocage Iframes externes
Header set X-Frame-Options SAMEORIGIN
### Accès au seul fichier index.php, les autres sont interdits
DirectoryIndex index.php
<IfDefine !Free>
### Interdire les .php/
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/(.*).php/
RewriteRule (.*) - [F]
### Filtre contre XSS, Redirections HTTP, base64_encode, Variable PHP GLOBALS via URL
### Modifier VARIABLE _REQUEST via URL, Test de faille PHP, Injection SQL simple
RewriteEngine On
RewriteCond %{REQUEST_METHOD} (GET|POST) [NC]
RewriteCond %{QUERY_STRING} ^(.*)(%3C|<)/?script(.*)$ [NC,OR]
RewriteCond %{QUERY_STRING} ^(.*)(%3D|=)?javascript(%3A|:)(.*)$ [NC,OR]
RewriteCond %{QUERY_STRING} ^(.*)document\.location\.href(.*)$ [OR]
RewriteCond %{QUERY_STRING} ^.*(%24&x).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(127\.0).* [NC,OR]
RewriteCond %{QUERY_STRING} ^(.*)(%3D|=)(https?|ftp|mosConfig)(%3A|:)//(.*)$ [NC,OR]
### Desactive les méthodes de requêtes TRACE TRACK DELETE
RewriteEngine On
RewriteCond %{REQUEST_METHOD} ^(TRACE|DELETE|TRACK) [NC]
RewriteRule ^.* - [F]
</IfDefine>
OPTIONS -Indexes
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
### Interdire les autres types de fichier index
<Files ~ "^(index)\.(p?s?x?htm?|txt|aspx?|cfml?|cgi|pl|php[3-9]|jsp|xml)$">
order allow,deny
deny from all
</Files>
<Files ~ "\.(inc|dtb)$">
Order allow,deny
Deny from all
Satisfy all
</Files>
ErrorDocument 400 /error.php?err=400
ErrorDocument 403 /error.php?err=403
ErrorDocument 404 /error.php?err=404
ErrorDocument 500 /error.php?err=500
wget 'https://lists2.roe3.org/guppy/Manifest'
[infos]
Nom='guppy60020'
Description="Contient les corrections et ajouts de la version 6.00.20.
Contain all fixes and addings from 6.00.20."
Version='12/11/2024'
Auteur='GuppY Team'
[check]
guppy_vmin='6.00.19'
[script]
include='renfilesantispam.inc'
function='rename_antispam_files'
wget 'https://lists2.roe3.org/guppy/agenda.php'
<?php
/*******************************************************************************
* Agenda
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2023 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.11 (March 09, 2023) : correction event display
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/agenda.inc';
$gyagv = new GY_agenda();
$result = $gyagv->AGV_ok($userprefs[1], $lng);
if (is_array($result)) {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
{
htable1($topmess, $result[0].$tconfig, '100%');
}
else
htable($topmess.'mmm', '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
if ($result == 1 ) $result = $gyagv->AGV_day($lng);
if ($result == 2 || $result == '') $result = $gyagv->AGV_month($lng);
$topmess = $gyagv->topmess;
$tconfig = $gyagv->tconfig;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
{
htable1($topmess, $result[0].$tconfig, '100%');
}
else
htable($topmess, '100%');
echo $result[1];
btable();
include CHEMIN.'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/articles.php'
<?php
/*******************************************************************************
* Articles
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/articles.inc';
$gyart = new GY_articles();
$result = $gyart->ART_content();
$userprefs3 = $gyart->userprefs3;
$widepage = $gyart->widepage;
$tconfig = $gyart->tconfig;
$topmess = $gyart->topmess;
if ($gyart->countit === false) {
if ($site[10] != '') header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
else header('HTTP/1.0 404 Not Found');
}
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($gyart->img.'<a href="'.$site[3].$gyart->urltitre.'" title="'.$web[511].'">'.$topmess.'</a>', 'ART'.$tconfig, '100%');
else
htable($gyart->img.'<a href="'.$site[3].$gyart->urltitre.'" title="'.$web[511].'">'.$topmess.'</a>', '100%');
echo $gyart->txtart2;
btable();
$result = $gyart->ART_react();
if (!is_null($result)) {
htable($result[0], '100%');
echo $result[1];
btable();
}
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/blog.php'
<?php
/*******************************************************************************
* Blog
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/blog.inc';
$gybl = new GY_blog();
$gybl->typ = 'BL';
$result = $gybl->BLS_ok($userprefs[1], $lng);
$tconfig = $gybl->tconfig;
$topmess = $gybl->topmess;
switch ($result[0]) {
case 'h0' : header('HTTP/1.0 403 Forbidden');
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'BL' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gybl->BL_content();
$topmess = $gybl->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $gybl->typ.$tconfig, '100%');
else
htable($topmess, '100%');
echo $gybl->txtart2;
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/blogarch.php'
<?php
/*******************************************************************************
* Archived Blog
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/blog.inc';
$gybl = new GY_blog();
$gybl->typ = 'BGA';
$result = $gybl->BLS_ok($userprefs[1], $lng);
$tconfig = $gybl->tconfig;
$topmess = $gybl->topmess;
switch ($result[0]) {
case 0 : header('HTTP/1.0 403 Forbidden'); break;
case 1 : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404'); break;
case 2 : header('HTTP/1.0 404 Not Found'); break;
case 'BGA' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'BGA'.$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gybl->BLA_content();
$topmess = $gybl->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'BGA'.$tconfig, '100%');
else
htable($topmess, '100%');
echo $gybl->txtart2;
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/blogrss.php'
<?php
/*******************************************************************************
* Blog
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/blog.inc';
$gybl = new GY_blog();
$gybl->typ = 'BSS';
$result = $gybl->BLS_ok($userprefs[1], $lng);
$tconfig = $gybl->tconfig;
$topmess = $gybl->topmess;
switch ($result[0]) {
case 0 : header('HTTP/1.0 403 Forbidden'); break;
case 1 : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404'); break;
case 2 : header('HTTP/1.0 404 Not Found'); break;
case 'BSS' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gybl->BSS_content();
$topmess = $gybl->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/blogs.php'
<?php
/*******************************************************************************
* Blog
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/blog.inc';
$gybl = new GY_blog();
$gybl->typ = 'BLS';
$result = $gybl->BLS_ok($userprefs[1], $lng);
$tconfig = $gybl->tconfig;
$topmess = $gybl->topmess;
switch ($result[0]) {
case 'h0' : header('HTTP/1.0 403 Forbidden');
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'BLS' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'BLS'.$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gybl->BLS_content();
$topmess = $gybl->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'BLS'.$tconfig, '100%');
else
htable($topmess, '100%');
echo $gybl->txtart2;
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/blogsarch.php'
<?php
/*******************************************************************************
* Archived Blog
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/blog.inc';
$gybl = new GY_blog();
$gybl->typ = 'BGSA';
$result = $gybl->BLS_ok($userprefs[1], $lng);
$tconfig = $gybl->tconfig;
$topmess = $gybl->topmess;
switch ($result[0]) {
case 0 : header('HTTP/1.0 403 Forbidden'); break;
case 1 : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404'); break;
case 2 : header('HTTP/1.0 404 Not Found'); break;
case 'ABG' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'BGSA'.$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gybl->BLSA_content();
$topmess = $gybl->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'BGSA'.$tconfig, '100%');
else
htable($topmess, '100%');
echo $gybl->txtart2;
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/compte.php'
<?php
/*******************************************************************************
* Account
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/user.inc';
$gyusr = new GY_user();
$result = $gyusr->CMPT_ok($userprefs[1], $lng);
$tconfig = $gyusr->tconfig;
if (!empty($result[0])) {
$topmess = $gyusr->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyusr->CMPT_content();
$topmess = $gyusr->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/connect.php'
<?php
/*******************************************************************************
* Connect User
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/user.inc';
$gycnct = new GY_user();
$result = $gycnct->CNCT_ok($userprefs[1], $lng);
$tconfig = $gycnct->tconfig;
$topmess = $gycnct->topmess;
if (!empty($result[0])) {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gycnct->CNCT_content();
$topmess = $gycnct->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/contact.php'
<?php
/*******************************************************************************
* Form Advanced contact
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2023 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.15 (November 29, 2023) : Correction illegal variable
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
$crypt = isset($_POST['crypt']) ? strip_tags($_POST['crypt']) : NULL;
$cryptok = (!$crypt) ? false : chk_crypt($crypt);
$lng = import('lng');
$ctconfig = import('ctconfig');
$ctconfig = empty($ctconfig) ? 'ctconfig' : $ctconfig;
$dbct = SelectDBFieldsByField(ReadDBFields(CONFIGREP.'ctconfigs.dtb'), 1, $ctconfig);
$okct = !empty($dbct) && $dbct[0][1] == $ctconfig && $dbct[0][2] == 'a' ? true : false;
if ($okct && is_file(CONFIGREP.$ctconfig.'.inc')) {
include CONFIGREP.$ctconfig.'.inc';
} else {
echo BeginJavascript().'
alert("STOP ! Config file not found !");
window.history.back();'.EndJavascript();
die();
}
function FindIndexDBFields($fic, $submit0, $submit1, $submit2) {
if (FileDBExist($fic)) {
$DataDB = ReadDBFields($fic);
for ($i = 0; $i < count($DataDB); $i++) {
if (@stristr($DataDB[$i][0],$submit0)
&& @stristr($DataDB[$i][1],$submit1)
&& @stristr($DataDB[$i][2],$submit2)) {
return $i;
}
}
}
return FALSE;
}
$t = ($lng == $lang[0]) ? 0 : 10 ;
$n = ($lng == $lang[0]) ? 3 : 4 ;
if (import('act', 'GET') != NULL) die('STOP ! Variable $act : illegal origine !');
$act = import('act', 'POST');
$antispam = import('antispam');
$ctrl_spam = import('code_pseudo', 'POST');
$tconfig = $menuico[21] == 'ALL' ? import('tconfig', '', true, 0) : $menuico[21];
$REMOTE_ADDR = getIPadress($site[6] == 'on' ? (isset($_SERVER['HTTP_X_FORWARDED_FOR'])? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']): $_SERVER['REMOTE_ADDR']);
switch ($act) {
case NULL :
$token = uniqid(rand(), true);
$token_time = time();
setcookie(CTCT_COOKIE, $token.CONNECTOR.$token_time, time() + (30 * 60), '/', $_DOMAIN, $_SECURE, $_HTTPONLY);
break;
case 'send' :
$tokens = explode(CONNECTOR, $_COOKIE[CTCT_COOKIE]);
if (empty($tokens[0]) || $tokens[1] < time() - (30 * 60)) {
echo BeginJavascript().'
var sto = "'.str_replace('<br />', '\n', stripslashes($web[681])).'";
alert(sto);
'.EndJavascript();
$act = NULL;
$token = uniqid(rand(), true);
$token_time = time();
setcookie(CTCT_COOKIE, $token.CONNECTOR.$token_time, time() + (30 * 60), '/', $_DOMAIN, $_SECURE, $_HTTPONLY);
}
elseif ($tokens[1] + 2 > time()) {
echo BeginJavascript().'
var sto = "'.str_replace('<br />', '\n', stripslashes($web[682])).'";
alert(sto);
'.EndJavascript();
$act = NULL;
$token = uniqid(rand(), true);
$token_time = time();
if (!isset($_COOKIE[CTCT_COOKIE]))
setcookie(CTCT_COOKIE, $token.CONNECTOR.$token_time, time() + (30 * 60), '/', $_DOMAIN, $_SECURE, $_HTTPONLY);
}
break;
}
$form0 = import('form0');
$form1 = import('form1');
$form2 = import('form2');
$text1 = import('text1');
$text2 = import('text2');
$text3 = import('text3');
$text4 = import('text4');
$text5 = import('text5');
$text6 = import('text6');
$sel0 = import('sel0');
$rad0 = import('rad0');
$chk1 = import('chk1');
$chk2 = import('chk2');
$chk3 = import('chk3');
$chk4 = import('chk4');
$chkar = import('chkar');
$rgpd = import('rgpd', 'POST', true, '');
require CHEMIN.'inc/ckeditor_config/editors_functions.php';
require_once CHEMIN.'inc/htmlpurifier/library/HTMLPurifier.auto.php';
$configpg = HTMLPurifier_Config::createDefault();
$configpg->set('HTML.Allowed', '
p[class|id|style],div[class|id|style],strong,em,u,b,sub,sup,span[class|style],pre[class],blockquote[class|style],
a[href|target|title|style],img[src|alt|style],ul[style],ol[start|style],li');
$configpg->set('Attr.AllowedFrameTargets', array('_blank', '_self'));
$purifier = new HTMLPurifier($configpg);
$ptxt = import('ptxt', 'POST', FALSE);
$ptxt = $purifier->purify(isAuthorImg($userprefs[1]) ? $ptxt : getPGTXT($ptxt));
if (!empty($ctrl_spam)) $act = null;
$topmess = $lng == $lang[0] ? $ctlbl0 : $ctlbl1;
$okmail = false;
$typ = TYP_MAIL;
$err_form1 = empty($form1) && $act == 'send';
$err_form11 = !$err_form1 && 1 != preg_match('/^.{2,40}$/', $form1) && $act == 'send';
$err_form2 = empty(checkEmail($form2)) && $act == 'send';
$err_txt1 = $chtxt[1] == 'fix' && empty($text1) && $act == 'send';
$err_txt2 = $chtxt[2] == 'fix' && empty($text2) && $act == 'send';
$err_txt3 = $chtxt[3] == 'fix' && empty($text3) && $act == 'send';
$err_txt4 = $chtxt[4] == 'fix' && empty($text4) && $act == 'send';
$err_txt5 = $chtxt[5] == 'fix' && empty($text5) && $act == 'send';
$err_txt6 = $chtxt[6] == 'fix' && empty($text6) && $act == 'send';
$err_crypt = $serviz[100] != '0' && $serviz[95] == 'on' && ($userprefs[1] == '' || $serviz[98] == '') && !$cryptok && $act == 'send' ? true : false;
$err_ptxt = empty($ptxt) && $act == 'send' ? true : false;
$err_rgpd = !empty($serviz[177]) && empty($rgpd) && !OK_RGPD_date($userprefs[1]) && $act == 'send' ? true: false;
$erreur = '';
$erreur .= $err_form1 ? '<li>'.$web[40].'</li>': '';
$erreur .= $err_form11 ? '<li>'.$web[266].'</li>': '';
$erreur .= $err_form2 ? '<li>'.$web[42].'</li>': '';
$erreur .= $err_txt1 ? '<li>'.$web[545].$ftxt[1 + $t].$web[546].'</li>': '';
$erreur .= $err_txt2 ? '<li>'.$web[545].$ftxt[2 + $t].$web[546].'</li>': '';
$erreur .= $err_txt3 ? '<li>'.$web[545].$ftxt[3 + $t].$web[546].'</li>': '';
$erreur .= $err_txt4 ? '<li>'.$web[545].$ftxt[4 + $t].$web[546].'</li>': '';
$erreur .= $err_txt5 ? '<li>'.$web[545].$ftxt[5 + $t].$web[546].'</li>': '';
$erreur .= $err_txt6 ? '<li>'.$web[545].$ftxt[6 + $t].$web[546].'</li>': '';
$erreur .= $err_ptxt ? '<li>'.$web[43].'</li>': '';
$erreur .= $err_crypt ? '<li>'.$web[529].'</li>': '';
$erreur .= $err_rgpd ? '<li>'.$web[405].'</li>': '';
if ($act == 'send' && empty($erreur)) { // envoi du mail
include CONFIG;
if (!empty($userprefs[1]) && $rgpd == 'on') setRGPDdate();
$okmail = true;
$eFiles = array();
for ($f = 0; $f < $chfic[0]; $f++) {
$filename = $_FILES['fil_in'.$f]['name'];
$tmpname = $_FILES['fil_in'.$f]['tmp_name'];
if ($filename != '') {
if (!is_uploaded_file($tmpname)) {
$erreur .= '- '.basename($filename)." : ".$web[547].'\n';
$okmail = false;
} else {
$eFiles[] = array($tmpname, $filename);
}
}
}
$index = FindIndexDBFields(DBANTISPAM, $antispam, getIPadress($site[6] == 'on' ? (isset($_SERVER['HTTP_X_FORWARDED_FOR'])? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']): $_SERVER['REMOTE_ADDR']), $typ);
if ($index === false) {
if (is_file('inc/postguest_antispam.inc')) include 'inc/postguest_antispam.inc';
die('STOP ! Anti-SPAM !');
} else {
$fmail0 = $fdest[1];
for ($d = 2; $d < count($fdest); $d++)
{
if (!isset($f2name[$d])) $f2name[$d] = '';
if ($form0 == ($lang[0] == $lng ? $fname[$d] : $f2name[$d])) {
$fmail0 = $fdest[$d];
break;
}
}
$bcc = !empty($chkcc) ? 'bcc='.$user[1].'&' : '';
$corps = '<table style="width:100%;">';
$corps .= '<tr><td style="width:30%;"><u>'.$web[330].'</u> : </td><td style="width:70%;">'.$form1.'</td></tr>'."\n";
$corps .= '<tr><td><u> '.$web[101].'<br />'.$web[476].'</u> </td><td><a href="mailto:'.$form2.'?'.$bcc.'subject=Re: '.$web[330].stripslashes($site[($lang[0] == $lng ? 0 : 11)]).'">'.stripslashes($form2).'</a></td></tr>'."\n";
$corps .= '<tr><td colspan="2"><hr /></td></tr>'."\n";
// zones texte 1 à 3
if ($text1) $corps .= '<tr><td><u> '.$ftxt[1 + $t].'</u> : </td><td>'.stripslashes($text1).'</td></tr>'."\n";
if ($text2) $corps .= '<tr><td><u> '.$ftxt[2 + $t].'</u> : </td><td>'.stripslashes($text2).'</td></tr>'."\n";
if ($text3) $corps .= '<tr><td><u> '.$ftxt[3 + $t].'</u> : </td><td>'.stripslashes($text3).'</td></tr>'."\n";
//zone select
if ($sel0 != '') $corps .= '<tr><td><u> '.$fsel[0 + $t].'</u> : </td><td>'.stripslashes($sel0).'</td></tr>'."\n";
//zone boutons radio
if ($rad0) $corps .= '<tr><td><u> '.$frad[0 + $t].'</u> : </td><td>'.stripslashes($rad0).'</td></tr>'."\n";
// zone cases à cocher
if ($chchk[0] != '' && $chk1 || $chk2 || $chk3 || $chk4) {
$corps .= '<tr><td style="vertical-align:top"><u> '.$fchk[0 + $t].'</u> : </td><td>'."\n";
if ($chk1) $corps .= '<span style="text-align:right;">- '.$fchk[1 + $t].'</span><br />'."\n";
if ($chk2) $corps .= '<span style="text-align:right;">- '.$fchk[2 + $t].'</span><br />'."\n";
if ($chk3) $corps .= '<span style="text-align:right;">- '.$fchk[3 + $t].'</span><br />'."\n";
if ($chk4) $corps .= '<span style="text-align:right;">- '.$fchk[4 + $t].'</span><br />'."\n";
$corps .= '</td></tr>'."\n";
}
// zones texte 4 à 6
if ($text4) $corps .= '<tr><td><u> '.$ftxt[4 + $t].'</u> : </td><td>'.stripslashes($text4).'</td></tr>'."\n";
if ($text5) $corps .= '<tr><td><u> '.$ftxt[5 + $t].'</u> : </td><td>'.stripslashes($text5).'</td></tr>'."\n";
if ($text6) $corps .= '<tr><td><u> '.$ftxt[6 + $t].'</u> : </td><td>'.stripslashes($text6).'</td></tr>'."\n";
// zone message
$corps .= '<tr><td colspan="2"><hr /><u> '.$web[552].'</u> :<br />'.$ptxt.'</td></tr></table>'."\n";
/*
// confection de l'email
$delimiteur = $serviz[155] == 'standard' ? '==S=E=P=A=R=A=T=O=R==' : '-----='.md5(uniqid(rand()));
$eol = $serviz[155] == 'standard' ? "\r\n" : "\n";
$msg1 = "Ceci est un message au format MIME 1.0 multipart/mixed.".$eol;
$msg1 .= "--$delimiteur".$eol;
$msg1 .= "Content-Type: text/html; charset=utf-8".$eol;
$msg1 .= "Content-Transfer-Encoding:8bit".$eol;
$msg1 .= $eol;
$msg2 = '';
*/
$nbf = 0;
$efilesattaches = '';
$dossierDestination = CHEMIN.'fic/';
for ($f = 0; $f < $chfic[0]; $f++) {
$fichier_photo = $_FILES['fil_in'.$f]['name'];
$fichier_photo_tmpname = $_FILES['fil_in'.$f]['tmp_name'];
$prefix = time()."_";
if ($fichier_photo != '')
{
$fichier_photo = $prefix.$fichier_photo;
if (move_uploaded_file($fichier_photo_tmpname, $dossierDestination.$fichier_photo))
{
SetChmod($dossierDestination.$fichier_photo);
$fp = fopen($dossierDestination.$fichier_photo, 'rb');
$attachment = fread($fp, filesize($dossierDestination.$fichier_photo));
fclose($fp);
$efilesattaches .= $fichier_photo.' ';
$nbf++;
}
}
}
// confection partie texte
$texte1 = strip_tags(preg_replace("!<br />|<br />|</p>!i", "\n", preg_replace("!<hr>|<hr />!i", "\n \n", $corps)));
// envoi de l'email
$msobj = $web[330].stripslashes($site[($lang[0] == $lng ? 0 : 11)]);
$msobj = strtr($msobj, array('à'=>'a', 'é'=>'e', 'è'=>'e', 'ê'=>'e', 'ë'=>'e', 'î'=>'i', 'ï'=>'i', 'ô'=>'o', 'û'=>'u', 'û'=>'u'));
$msobj = preg_replace('![^-a-zA-Z0-9_ ]!i', '.', $msobj);
$eAR = '';
if ($fdest[0] != '') $destinataireencopy = $fdest[0].' ';
else $destinataireencopy = '';
$eFrom = $user[1];
$FromTo = $form1;
$eTo = $fmail0;
$eSubject = $msobj;
$eMsgHtml = $corps;
$actioncomplete = 'C'; // pour contact
$eMsgText = strip_tags(preg_replace("!<br />|<br />|</p>!i", "\n", preg_replace("!<hr>|<hr />!i", "\n \n", $eMsgHtml)));
$eAR = $chkar != '' ? $form2 : '';
sendmail($eTo, $eFrom,$eSubject, $eMsgHtml, $efilesattaches, $actioncomplete, $destinataireencopy, $eAR, $form2, $form1='');
}
}
else {
$antispam = md5(uniqid(rand()));
$antispams = ReadDBFields(DBANTISPAM);
$timestamp = microtime(TRUE);
array_push($antispams, array($antispam, getIPadress($site[6] == 'on' ? (isset($_SERVER['HTTP_X_FORWARDED_FOR'])? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']): $_SERVER['REMOTE_ADDR']), TYP_MAIL, $timestamp));
$timestamp -= $serviz[52] * 60;
while($antispams[0][3] < $timestamp) {
array_shift($antispams);
}
if (count($antispams) > $serviz[51]) {
array_shift($antispams);
}
WriteDBFields(DBANTISPAM, $antispams);
}
$headinc .= BeginJavascript().'
function VerifyForm() {
var sto = "";
var messok = "";
var erreur = false;
if (document.rapporter.form1.value == "") {
sto += " - '.addslashes($web[40]).'\n";
document.rapporter.form1.className = "errorInputText";
erreur = true;
} else {
regexp = /^.{2,'.max($serviz[148], 40).'}$/;
if (!regexp.test(document.rapporter.form1.value)) {
sto += " - '.addslashes($web[266]).'\n";
document.rapporter.form1.className = "errorInputText";
erreur = true;
}
}
regexp = /^[^\.\s]+(\.[^\.\s]+)*@[^\.\s]+(\.[^\.\s]+)+$/;
if (!regexp.test(document.rapporter.form2.value)) {
sto += " - '.addslashes($web[42]).'\n";
document.rapporter.form2.className = "errorInputText";
erreur = true;
}';
for ($i = 1; $i <= 6; $i++) {
if ($chtxt[$i] == 'fix') {
$headinc .= '
if (document.rapporter.text'.$i.'.value == "") {
sto += " - '.addslashes($web[545].$ftxt[$i + $t].$web[546]).'\n";
document.rapporter.text'.$i.'.className = "errorInputText";
erreur = true;
}';
}
}
if ($chsel[0] == 'fix')
$headinc .= '
if (document.rapporter.sel0.value == "???") {
sto += " - '.addslashes($web[545].$fsel[0 + $t].$web[549]).'\n";
document.rapporter.sel0.className = "errorInputText";
erreur = true;
}';
if ($chrad[0] == 'fix')
$headinc .= '
if (document.rapporter.rad0.value == "") {
sto += " - '.addslashes($web[545].$frad[0 + $t].$web[549]).'\n";
erreur = true;
}';
if ($chchk[0] == 'fix') {
$chk = '';
for ($i = 1; $i <= 4; $i++) {
if ($fchk[$i + $t] != '') $chk .= '!document.rapporter.chk'.$i.'.checked && ';
}
$chk = substr($chk, 0, -3);
$headinc .= '
if ('.$chk.') {
sto += " - '.addslashes($web[545].$fchk[0 + $t].$web[550]).'\n";
erreur = true;
}';
}
$headinc .= '
if (erreur) {
sto = "'.addslashes($web[44]).'\n\n" + sto;
alert(sto);
return false;
}
}'.EndJavascript();
include 'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'CNT'.$tconfig, '100%');
else
htable($topmess, '100%');
if (!isAccessGranted($members[20])) {
echo '
<div class="container text-center web342">'.$web[342];
if ($members[19] != '0' && $members[19] != '3') {
$href1 = CHEMIN.($site['URLR'] == 'on'
? $lng.'-'.$urlrw[3].'-0-'.$tconfig.$z2
: 'connect.php?lng='.$lng.'&tconfig='.$tconfig.$z2);
$href2 = CHEMIN.($site['URLR'] == 'on'
? $lng.'-'.$urlrw[15].'-5-new-'.$tconfig.$z2
: $site['USR'].'.php?lng='.$lng.'&uuser=new&tconfig='.$tconfig.$z2);
echo '
<p class="text-center">
'.SubmitButton($web[630], 'self.location.href=\''.$href1.'\'').
(empty($pseudo) ? ' '.SubmitButton($web[160], 'self.location.href=\''.$href2.'\'') : '').'
</p><br />';
}
echo '
</div>';
} else {
if ($okmail) {
CreateDir(TEMPREP);
for ($f = 0; $f < $chfic[0]; $f++) {
$filename = $_FILES['fil_in'.$f]['name'];
if ($filename != '') {
@unlink(TEMPREP.$filename);
}
}
if ($chfic[0] != 0) $corps .= '<hr />';
if ($efilesattaches != '')
{
$filename = explode(' ',$efilesattaches);
for ($f = 0; $f < $chfic[0]; $f++) {
if ($filename != '') {
$corps .= '<u>PJ:</u> '.$filename[$f].'<br />';
@unlink($dossierDestination.$filename[$f]);
}
}
}
echo '
<div class="container text-left dispMail">
<p>'.$web[539].'</p>
<div class="rep bord text-center dispMailBody">'.stripslashes($corps).'</div>
<p class="text-left">'.$web[540].'</p>
</div>';
} else {
function msgtext($check, $name, $texte, $ftexte, $err_txt) {
global $fix, $charset;
if ($check == 'fix') $ftexte .= $fix;
echo '
<div class="d-table-row">
<div class="d-table-cell">
<div class="m-auto pg360 text-center">'.$ftexte.'</div>
<div class="m-auto pg360 pb-2">
<input class="'.($err_txt ? 'errorInputText' : 'texte').' form-control textFieldContact mx-auto" type="text"
name="'.$name.'" value="'.htmlentities(stripslashes($texte), ENT_QUOTES, $charset).'" />
</div>
</div>
</div>';
}
if (!empty($erreur))
echo displayErrorMsg($web[542], $erreur);
echo '
<div class="text-center">';
// Position Contact téléphonique $ftelbelow[0] == '' => en haut
if ($ftelbelow[0] == '') {
// contact téléphonique
if ($ftel[0] == 'on') {
echo '
<div class="w-100 text-left">'.ForceToAbsolute(stripslashes($ftel[1 + $t])).'</div>';
}
}
// Position Contact postal $fletbelow[0] == '' => en haut
if ($fletbelow[0] == '') {
// contact par courrier
if ($flet[0] == 'on') {
echo '
<div class="w-100 text-left">'.ForceToAbsolute(stripslashes($flet[1 + $t])).'</div>';
}
}
// contact par mail
echo '
<div class="mainct w-100 text-center">
<form name="rapporter"
action="'.($site['URLR'] == 'on'
? $lng.'-'.$urlrw[2].'-'.$tconfig.$z2
: $site['CT'].'.php?lng='.$lng.'&tconfig='.$tconfig.$z2).'"
enctype="multipart/form-data"
method="post"
onsubmit="return VerifyForm(); return false;">
<fieldset class="border rounded">
<legend class="headContactW">• '.$web[541].'</legend>
<input type="hidden" name="antispam" value="'.$antispam.'" />
<input type="hidden" name="act" value="send" />
<input type="hidden" name="ctconfig" value="'.$ctconfig.'" />
<div class="table-responsive-md">
<div class="d-table w-100 m-auto text-left maxWidthContact">
<div class="d-table-row">
<div class="d-table-cell text-center">
<div class="pb-2">'.$web[45].'</div>
<span class="d-none"><input type="text" name="code_pseudo" value="" /></span>
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell text-left pb-4">(<span class="text-danger"> * </span>) '.$web[543].'</div>
</div>';
$fix = ' (<span class="text-danger"> * </span>)';
// choix destinataire
if (!isset($fdest[2])) { // si 1 seul destinataire pas de select
echo '
<div class="d-table-row">
<div class="d-table-cell">
<input type="hidden" name="form0" value="'.htmlentities($lang[0] == $lng ? $fname[1] : $f2name[1], ENT_QUOTES, $charset).'" />
</div>
</div>';
} else {
echo '
<div class="d-table-row">
<div class="d-table-cell">
<div class="table-responsive-md">
<div class="d-table w-100">
<div class="d-table-row">
<div class="d-table-cell text-left w-45">'.htmlentities($lang[0] == $lng ? $fname[0] : $f2name[0], ENT_QUOTES, $charset).' : </div>
<div class="d-table-cell text-left w-55">
<select name="form0" class="form-control form-control-lg" style="max-width: 224px;">';
for ($d = 1; $d < count($fdest); $d++) {
if (!isset($f2name[$d])) $f2name[$d] = '';
echo '
<option value="'.htmlentities($lang[0] == $lng
? $fname[$d] : $f2name[$d], ENT_QUOTES, $charset).'"'.Selected($form0 == ($lang[0] == $lng ? $fname[$d]
: $f2name[$d])).'>
'.($lang[0] == $lng ? $fname[$d] : $f2name[$d]).'</option>';
}
echo '
</select>
</div>
</div>
</div>
</div>
</div>
</div>';
}
// expéditeur
$form1 = (empty($form1) && $userprefs[1] != '') ? $userprefs[1] : $form1;
$form2 = (empty($form2) && $userprefs[2] != '') ? $userprefs[2] : $form2;
echo '
<div class="d-table-row">
<div class="d-table-cell">
<div class="input-group m-auto pg360 pb-2">
<div class="input-group-prepend">
<span class="input-group-text"><i class="far fa-user"></i></span>
</div>
<input class="'.($err_form1 || $err_form11 ? 'errorInputText' : 'texte').' form-control" type="text" name="form1"
value="'.htmlentities(stripslashes($form1), ENT_QUOTES, $charset).'" placeholder="'.$fmail[1 + $t].'" />'.$fix.'
</div>
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell">
<div class="input-group m-auto pg360 pb-2">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-at"></i></span>
</div>
<input class="'.($err_form2 ? 'errorInputText' : 'texte').' form-control" type="text" name="form2"
value="'.stripslashes($form2).'" placeholder="'.$fmail[2 + $t].'" />'.$fix.'
</div>
</div>
</div>';
// zones texte 1 à 3
if ($chtxt[1] != '') msgtext ($chtxt[1], 'text1', $text1, $ftxt[1 + $t], $err_txt1);
if ($chtxt[2] != '') msgtext ($chtxt[2], 'text2', $text2, $ftxt[2 + $t], $err_txt2);
if ($chtxt[3] != '') msgtext ($chtxt[3], 'text3', $text3, $ftxt[3 + $t], $err_txt3);
// zone select
if ($chsel[0] != '') {
if ($chsel[0] == 'fix') $fsel[0 + $t] .= $fix;
echo '
<div class="d-table-row">
<div class="d-table-cell">
<div class="input-group pg360 m-auto pb-2">
<div class="input-group-prepend">
<span class="input-group-text">'.$fsel[0 + $t].'</span>
</div>
<select name="sel0" class="form-control" style="max-width: 224px;">
<option value="???">???</option>';
if ($fsel[1]) {
echo '
<option value="'.$fsel[1 + $t].'"'.Selected($sel0 == $fsel[1 + $t]).'>'.$fsel[1 + $t].'</option>';
}
if ($fsel[2]) {
echo '
<option value="'.$fsel[2 + $t].'"'.Selected($sel0 == $fsel[2 + $t]).'>'.$fsel[2 + $t].'</option>';
}
if ($fsel[3]) {
echo '
<option value="'.$fsel[3 + $t].'"'.Selected($sel0 == $fsel[3 + $t]).'>'.$fsel[3 + $t].'</option>';
}
if ($fsel[4]) {
echo '
<option value="'.$fsel[4 + $t].'"'.Selected($sel0 == $fsel[4 + $t]).'>'.$fsel[4 + $t].'</option>';
}
echo '
</select>
</div>
</div>
</div>';
}
// zone boutons radio
if ($chrad[0] != '') {
echo '
<div class="d-table-row"><div class="d-table-cell"> </div></div>';
if ($chrad[0] == 'fix') $frad[0 + $t] .= $fix;
echo '
<div class="d-table-row">
<div class="d-table-cell">
<div class="table-responsive-md">
<div class="d-table w-100">
<div class="d-table-row">
<div class="d-table-cell text-left w-45 align-top">'.$frad[0 + $t].' : </div>
<div class="d-table-cell text-left w-55">';
if ($frad[1]) {
echo '
<div class="form-check">
<label class="form-check-label">
<input type="radio" class="form-check-input" name="rad0" value="'.$frad[1 + $t].'"'.checked($rad0 == $frad[1 + $t]).' />
'.$frad[1 + $t].'
</label>
</div>';
}
if ($frad[2]) {
echo '
<div class="form-check">
<label class="form-check-label">
<input type="radio" class="form-check-input" name="rad0" value="'.$frad[2 + $t].'"'.checked($rad0 == $frad[2 + $t]).' />
'.$frad[2 + $t].'
</label>
</div>';
}
if ($frad[3]) {
echo '
<div class="form-check">
<label class="form-check-label">
<input type="radio" class="form-check-input" name="rad0" value="'.$frad[3 + $t].'"'.checked($rad0 == $frad[3 + $t]).' />
'.$frad[3 + $t].'
</label>
</div>';
}
if ($frad[4]) {
echo '
<div class="form-check">
<label class="form-check-label">
<input type="radio" class="form-check-input" name="rad0" value="'.$frad[4 + $t].'"'.checked($rad0 == $frad[4 + $t]).' />
'.$frad[4 + $t].'
</label>
</div>';
}
echo '
</div>
</div>
</div>
</div>
</div>
</div>';
}
// zone à cocher
if ($chchk[0] != '') {
echo '
<div class="d-table-row"><div class="d-table-cell"> </div></div>';
if ($chchk[0] == 'fix') $fchk[0 + $t] .= $fix;
echo '
<div class="d-table-row">
<div class="d-table-cell">
<div class="table-responsive-md">
<div class="d-table w-100">
<div class="d-table-row">
<div class="d-table-cell text-left w-45 align-top">'.$fchk[0 + $t].' : </div>
<div class="d-table-cell text-left w-55">';
if ($fchk[1]) {
echo '
<div class="form-check">
<label class="form-check-label">
<input type="checkbox" class="form-check-input" name="chk1"'.checked($chk1).' /> '.$fchk[1 + $t].'
</label>
</div>';
}
if ($fchk[2]) {
echo '
<div class="form-check">
<label class="form-check-label">
<input type="checkbox" class="form-check-input" name="chk2"'.checked($chk2).' /> '.$fchk[2 + $t].'
</label>
</div>';
}
if ($fchk[3]) {
echo '
<div class="form-check">
<label class="form-check-label">
<input type="checkbox" class="form-check-input" name="chk3"'.checked($chk3).' /> '.$fchk[3 + $t].'
</label>
</div>';
}
if ($fchk[4]) {
echo '
<div class="form-check">
<label class="form-check-label">
<input type="checkbox" class="form-check-input" name="chk4"'.checked($chk4).' /> '.$fchk[4 + $t].'
</label>
</div>';
}
echo '
</div>
</div>
</div>
</div>
</div>
</div>';
}
//zones texte 4 à 6
echo '
<div class="d-table-row"><div class="d-table-cell"> </div></div>';
if ($chtxt[4] != '') msgtext ($chtxt[4], 'text4', $text4, $ftxt[4 + $t], $err_txt4);
if ($chtxt[5] != '') msgtext ($chtxt[5], 'text5', $text5, $ftxt[5 + $t], $err_txt5);
if ($chtxt[6] != '') msgtext ($chtxt[6], 'text6', $text6, $ftxt[6 + $t], $err_txt6);
echo '
</div>
</div>
<div class="table-responsive-md">
<div class="d-table w-100 m-auto maxWidthContact">
<div class="d-table-row">
<div class="d-table-cell text-center">';
// zone du message
$ptxt = addslashes($ptxt);
echo '
<div class="text-center pt-5">'.$fmes[1 + $t].$fix.' :</div>';
$cke_toolbar = !isAuthorImg($userprefs[1]) ? array('toolbarName'=>'Guppy_out_min') : array('toolbarName'=>'Guppy_out_min_img');
echo display_editor('ptxt', '100%', 280, $ptxt, $cke_toolbar);
// pièces jointes
if ($chfic[0] != '0') {
echo '
<input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
<div class="custom-files pt-5">'.$web[548].'</div>';
for ($f = 0; $f < $chfic[0]; $f++) {
echo '
<input class="texte form-control-file border pg360 mx-auto" type="file" name="fil_in'.$f.'" size="40" value="" />';
}
}
if ($far != '') { // accusé de réception
echo '
<div class="form-check py-5">
<label class="form-check-label mr-4" for="chkar">'.$web[544].'</label>
<input class="form-check-input mt-2" type="checkbox" id="chkar" name="chkar" />
</div>';
}
echo '
</div>
</div>
</div>
</div>
<div class="table-responsive-md">
<div class="d-table w-100">';
if (!empty($serviz[177]) && !OK_RGPD_date($userprefs[1])) echo '
<div class="d-table-row">
<div class="d-table-cell text-center">
<fieldset class="w-95 m-auto text-left border rounded"><legend>'.$web[14].'</legend>
<p><strong>'.$web[646].'</strong></p>
<p>'.$web[684].'</p>
<div class="form-check">
<label for="rgpd">'.$web[415].$fix.' : </label>
<input type="checkbox" class="form-check-input ml-2 mt-2" id="rgpd" name="rgpd"'.Checked($rgpd).' />
</div>
</fieldset>
</div>
</div>';
if ($serviz[100] != '0' && $serviz[95] == 'on' && ($serviz[98] == '' || $userprefs[1] == '')) {
$lbl = $serviz[100] == '3' ? $web[642] : '';
echo '
<div class="d-table-row">
<div class="d-table-cell text-center mt-4 mx-auto">'.dsp_crypt(0, 1, 3, 2, $lbl, $serviz[115] == 'on' ? $web[643] : '').'</div>
</div>
<div class="d-table-row">
<div class="d-table-cell text-center">
'.($serviz[100] == '3' ? '' : $web[530]).'
<input class="'.($err_crypt ? 'errorInputText' : 'texte').' inputcrypt m-auto form-control"
type="text" name="crypt" onpaste="return false;" />
</div>
</div>';
}
echo '
<div class="d-table-row"><div class="d-table-cell text-center"><br />'.SubmitButton($web[52]).'</div></div>
</div>
</div>
</fieldset>
</form>
</div>
</div>'.displayQuickConfig(NULL, false, 'contact&act=2&ctconfig='.$ctconfig, '', '', 13);;
// Position Contact téléphonique $ftelbelow[0] == 'on' => en bas
if ($ftelbelow[0] == 'on') {
// contact téléphonique
if ($ftel[0] == 'on') {
echo '
<div class="w-100 text-left">'.ForceToAbsolute(stripslashes($ftel[1 + $t])).'</div>';
}
}
// Position Contact postal $fletbelow[0] == 'on' => en bas
if ($fletbelow[0] == 'on') {
// contact par courrier
if ($flet[0] == 'on') {
echo '
<div class="w-100 text-left">'.ForceToAbsolute(stripslashes($flet[1 + $t])).'</div>';
}
}
}
}
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/download.php'
<?php
/*******************************************************************************
* Download
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.04 (December 14, 2021) : correction php 8
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
//include(CHEMIN.INCREP."lang/".$lng."-web".INCEXT);
include CHEMIN.'inc/download.inc';
$gydwnl = new GY_download();
$result = $gydwnl->DWNL_ok($userprefs[1], $lng);
$tconfig = $gydwnl->tconfig;
$topmess = $gydwnl->topmess;
switch ($result[0]) {
case 'h0' : header('HTTP/1.0 403 Forbidden');
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'DWNL' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gydwnl->DWNL_content();
$topmess = $gydwnl->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/dwnld.php'
<?php
/*******************************************************************************
* Download (popup)
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
define('NO_CRYPT', true);
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/download.inc';
$gydwnl = new GY_download();
$result = $gydwnl->DWNL2_ok();
$tconfig = $gydwnl->tconfig;
$topmess = $gydwnl->topmess;
if (!empty($result[0])) {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[1].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[2];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gydwnl->DWNL2_content();
echo $result[0];
?>
wget 'https://lists2.roe3.org/guppy/error.php'
<?php
/*******************************************************************************
* Error Track
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2023 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.20 (October 24, 2024) : Integration news function about counter IP
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
@include CHEMIN.'inc/includes.inc';
$msg0 = '';
$msg1 = '';
$msg2 = '';
$msg3 = '';
$source = '';
$addr_ip = '';
$domaine = '';
$with_mail = '';
$msg = array();
@include 'inc/lang/'.$lng.'-help.inc';
if (empty($site[10])) $err = import('err');
$datjourl = new DateTime('now');
$dateheureminiutesecl = $datjourl->format('Y_m_d');
$nomficlog = CHEMIN.'data/log/error'.'_'.$dateheureminiutesecl.'.log';
$REMOTE_ADDR = strip_tags(addslashes(getIPadress($site[6] == 'on' ? (isset($_SERVER['HTTP_X_FORWARDED_FOR'])? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']): $_SERVER['REMOTE_ADDR'])));
if (!empty($err)) {
$error_number = array('400', '401', '403', '404', '406', '500');
if (!in_array(abs($err), $error_number)) {
header('HTTP/1.0 403 Forbidden');
die('STOP ! Bad error number ('.$err.')');
}
$with_mail = 'false';
if (!is_numeric($err)) {
header('HTTP/1.0 403 Forbidden');
die('STOP ! $err is not numeric ('.$err.')');
}
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'Adresse IP: '.$REMOTE_ADDR."\n", FILE_APPEND | LOCK_EX);
$isvalidepoint = strpos($REMOTE_ADDR,'.');
if ($isvalidepoint)
{
$ip = explode('.', $REMOTE_ADDR);
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'IP Count Adresse IP V4: '.count($ip)."\n", FILE_APPEND | LOCK_EX);
if (count($ip) == 4)
{
foreach($ip as $n) {
if (!is_numeric($n) || $n < 0 || $n > 255) {
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'Erreur Adresse IP V4: '.$REMOTE_ADDR."\n", FILE_APPEND | LOCK_EX);
header('HTTP/1.0 403 Forbidden');
die('STOP ! Bad IP ('.$REMOTE_ADDR.')');
}
}
}
}
$isvalidepoint = strpos($REMOTE_ADDR,':');
if ($isvalidepoint)
{
$ip = explode(':', $REMOTE_ADDR);
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'IP Count Adresse IP V6: '.count($ip)."\n", FILE_APPEND | LOCK_EX);
if (count($ip) < 8)
{
header('HTTP/1.0 403 Forbidden');
die('STOP ! Bad IP ('.$REMOTE_ADDR.')');
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'Erreur Adresse IP V6: '.$REMOTE_ADDR."\n", FILE_APPEND | LOCK_EX);
}
}
if ($err < 0) {
$with_mail = 'true';
$err = abs($err);
}
$fichiers = array();
if ($hd = opendir(DATAREP.'error')) {
while ($fichier = readdir($hd)) {
if (stristr($fichier, INCEXT) == TRUE ) {
$fichiers[] = $fichier;
}
}
closedir($hd);
}
$max_fic = 20;
if (isset($serviz[50]) && ($serviz[50] > 0)) $max_fic = $serviz[50];
$min_fic = max(0, $max_fic - 10);
if (count($fichiers) > $max_fic) {
for ($i=0; $i < count($fichiers) - $min_fic; $i++) {
DestroyDBFile(DATAREP.'error/'.$fichiers[$i]);
}
}
$msg0 = $errormsg[(string)$err][0];
$msg1 = addslashes($errormsg[(string)$err][1]);
$msg2 = addslashes($errormsg[(string)$err][2]);
$msg3 = $errormsg[(string)$err][3];
if (empty($msg0)) {
$msg0 = 'Unattended error';
$msg1 = 'Unattended error';
$msg2 = 'See the <a href="http://www.apachefrance.com/Articles/7/page2.html" alt="">errors code HTTP</a>.';
$msg3 = 'HTTP/1.0 403 Forbidden';
}
$date = date("d/m/Y H:i:s");
$dest = $_SERVER['REQUEST_URI'];
$domaine = gethostbyaddr($REMOTE_ADDR);
$err = addslashes($err);
$dest = strip_tags(addslashes($dest));
$HTTP_REFERER = '';
$HTTP_USER_AGENT = '';
if (isset($_SERVER['HTTP_REFERER'])) $HTTP_REFERER = strip_tags(addslashes($_SERVER['HTTP_REFERER']));
if (isset($_SERVER['HTTP_USER_AGENT'])) $HTTP_USER_AGENT = strip_tags(addslashes($_SERVER['HTTP_USER_AGENT']));
$mettre = "<?php
\$err = '$err';
\$msg0 = '$msg0';
\$msg1 = '$msg1';
\$msg2 = '$msg2';
\$msg3 = '$msg3';
\$date = 'Date : $date';
\$dest = 'Page requested : $dest';
\$source = 'Page source : $HTTP_REFERER';
\$browser = 'Browser : $HTTP_USER_AGENT';
\$addr_ip = 'IP address : $REMOTE_ADDR';
\$domaine = 'Domaine : $domaine';
\$with_mail = $with_mail;
";
$errorId = date('Ymd_His_').$err;
WriteFullDB(DATAREP."error/".$errorId.INCEXT, $mettre);
header($msg3);
header('location:'.$site[3].($site['URLR'] == 'on'? $lng.'-'.$urlrw[0].'-99-'.$errorId: 'error.php?lng='.$lng.'&errorId='.$errorId));
}
else {
$errorId = preg_replace("`[^0-9_]`", "", import('errorId'));
if (!is_file(DATAREP."error/".$errorId.INCEXT)) {
header("HTTP/1.0 404 Not Found");
if ($site[10] != '') {
$err = import('err');
$aredir = explode('.php', $site[10]);
$tconfig = empty($site[12]) ? (isset($tconfig) ? $tconfig : 0) : $site[12];
header('location:'.$site[3].$aredir[0].'.php?lng='.$lng.'&err='.$err.'&tconfig='.$tconfig);
exit;
}
die('STOP ! No file !');
}
include DATAREP.'error/'.$errorId.INCEXT;
header($msg3);
$topmess = "Error ".$err." : ".$msg0;
include 'inc/hpage.inc';
htable($topmess, "100%");
echo "<b>".stripslashes($msg1)."</b><br />".stripslashes($msg2);
echo "<hr /><b>Context of the error</b><br />".$dest."<br />".$source."<br />".
$browser."<br />".$addr_ip."<br />".$domaine;
if ($with_mail) {
echo "<br /><b>This context is recorded and communicated to the webmaster.</b>";
eMailHtmlTo(
stripslashes($site[($lang[0] == $lng ? 0 : 11)])." : ERROR ".$err,
"Site : ".stripslashes($site[($lang[0] == $lng ? 0 : 11)])."<br />ERROR ".$err." : ".$msg0."<br />".$date."<br />".
$dest."<br />".$source."\n".$browser."<br />".$addr_ip."<br />".$domaine);
}
btable();
include 'inc/bpage.inc';
}
?>
wget 'https://lists2.roe3.org/guppy/error403.php'
<?php
/*******************************************************************************
* Error Track
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2023 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.20 (October 24, 2024) : Integration news function about counter IP
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
@include CHEMIN.'inc/includes.inc';
$msg0 = '';
$msg1 = '';
$msg2 = '';
$msg3 = '';
$source = '';
$addr_ip = '';
$domaine = '';
$with_mail = '';
$msg = array();
@include 'inc/lang/'.$lng.'-help.inc';
$err = import('err');
$datjourl = new DateTime('now');
$dateheureminiutesecl = $datjourl->format('Y_m_d');
$nomficlog = CHEMIN.'data/log/error403'.'_'.$dateheureminiutesecl.'.log';
$REMOTE_ADDR = strip_tags(addslashes(getIPadress($site[6] == 'on' ? (isset($_SERVER['HTTP_X_FORWARDED_FOR'])? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']): $_SERVER['REMOTE_ADDR'])));
if (!empty($err)) {
$error_number = array('400', '401', '403', '404', '406', '500');
if (!in_array(abs($err), $error_number)) {
header('HTTP/1.0 403 Forbidden');
die('STOP ! Bad error number ('.$err.')');
}
$with_mail = 'false';
if (!is_numeric($err)) {
header('HTTP/1.0 403 Forbidden');
die('STOP ! $err is not numeric ('.$err.')');
}
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'Adresse IP: '.$REMOTE_ADDR."\n", FILE_APPEND | LOCK_EX);
$isvalidepoint = strpos($REMOTE_ADDR,'.');
if ($isvalidepoint)
{
$ip = explode('.', $REMOTE_ADDR);
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'IP Count Adresse IP V4: '.count($ip)."\n", FILE_APPEND | LOCK_EX);
if (count($ip) == 4)
{
foreach($ip as $n) {
if (!is_numeric($n) || $n < 0 || $n > 255) {
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'Erreur Adresse IP V4: '.$REMOTE_ADDR."\n", FILE_APPEND | LOCK_EX);
header('HTTP/1.0 403 Forbidden');
die('STOP ! Bad IP ('.$REMOTE_ADDR.')');
}
}
}
}
$isvalidepoint = strpos($REMOTE_ADDR,':');
if ($isvalidepoint)
{
$ip = explode(':', $REMOTE_ADDR);
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'IP Count Adresse IP V6: '.count($ip)."\n", FILE_APPEND | LOCK_EX);
if (count($ip) < 8)
{
header('HTTP/1.0 403 Forbidden');
die('STOP ! Bad IP ('.$REMOTE_ADDR.')');
// file_put_contents($nomficlog, date('Y-m-d H:i:s').'Erreur Adresse IP V6: '.$REMOTE_ADDR."\n", FILE_APPEND | LOCK_EX);
}
}
if ($err < 0) {
$with_mail = 'true';
$err = abs($err);
}
$fichiers = array();
if ($hd = opendir(DATAREP.'error')) {
while ($fichier = readdir($hd)) {
if (stristr($fichier, INCEXT) == TRUE ) {
$fichiers[] = $fichier;
}
}
closedir($hd);
}
$max_fic = 20;
if (isset($serviz[50]) && ($serviz[50] > 0)) $max_fic = $serviz[50];
$min_fic = max(0, $max_fic - 10);
if (count($fichiers) > $max_fic) {
for ($i=0; $i < count($fichiers) - $min_fic; $i++) {
DestroyDBFile(DATAREP.'error/'.$fichiers[$i]);
}
}
$msg0 = $errormsg[(string)$err][0];
$msg1 = addslashes($errormsg[(string)$err][1]);
$msg2 = addslashes($errormsg[(string)$err][2]);
$msg3 = $errormsg[(string)$err][3];
if (empty($msg0)) {
$msg0 = 'Unattended error';
$msg1 = 'Unattended error';
$msg2 = 'See the <a href="http://www.apachefrance.com/Articles/7/page2.html" alt="">errors code HTTP</a>.';
$msg3 = 'HTTP/1.0 403 Forbidden';
}
$date = date("d/m/Y H:i:s");
$dest = $_SERVER['REQUEST_URI'];
$domaine = gethostbyaddr($REMOTE_ADDR);
$err = addslashes($err);
$dest = strip_tags(addslashes($dest));
$HTTP_REFERER = '';
$HTTP_USER_AGENT = '';
if (isset($_SERVER['HTTP_REFERER'])) $_SERVER['HTTP_REFERER'] = '';
else
$HTTP_REFERER = strip_tags(addslashes($_SERVER['HTTP_REFERER']));
if (isset($_SERVER['HTTP_USER_AGENT'])) $_SERVER['HTTP_USER_AGENT'] = '';
else
$HTTP_USER_AGENT = strip_tags(addslashes($_SERVER['HTTP_USER_AGENT']));
$mettre = "<?php
\$err = '$err';
\$msg0 = '$msg0';
\$msg1 = '$msg1';
\$msg2 = '$msg2';
\$msg3 = '$msg3';
\$date = 'Date : $date';
\$dest = 'Page requested : $dest';
\$source = 'Page source : $HTTP_REFERER';
\$browser = 'Browser : $HTTP_USER_AGENT';
\$addr_ip = 'IP address : $REMOTE_ADDR';
\$domaine = 'Domaine : $domaine';
\$with_mail = $with_mail;
";
$errorId = date('Ymd_His_').$err;
WriteFullDB(DATAREP."error/".$errorId.INCEXT, $mettre);
header($msg3);
header('location:'.$site[3].($site['URLR'] == 'on'? $lng.'-'.$urlrw[0].'-99-'.$errorId: 'error.php?lng='.$lng.'&errorId='.$errorId));
}
else {
$errorId = preg_replace("`[^0-9_]`", "", import('errorId'));
if (!is_file(DATAREP."error/".$errorId.INCEXT)) {
header("HTTP/1.0 404 Not Found");
}
include DATAREP.'error/'.$errorId.INCEXT;
header($msg3);
$topmess = "Error ".$err." : ".$msg0;
include 'inc/hpage.inc';
htable($topmess, "100%");
echo "<b>".stripslashes($msg1)."</b><br />".stripslashes($msg2);
echo "<hr /><b>Context of the error</b><br />".$dest."<br />".$source."<br />".
$browser."<br />".$addr_ip."<br />".$domaine;
if ($with_mail) {
echo "<br /><b>This context is recorded and communicated to the webmaster.</b>";
eMailHtmlTo(
stripslashes($site[($lang[0] == $lng ? 0 : 11)])." : ERROR ".$err,
"Site : ".stripslashes($site[($lang[0] == $lng ? 0 : 11)])."<br />ERROR ".$err." : ".$msg0."<br />".$date."<br />".
$dest."<br />".$source."\n".$browser."<br />".$addr_ip."<br />".$domaine);
}
btable();
include 'inc/bpage.inc';
}
?>
wget 'https://lists2.roe3.org/guppy/faq.php'
<?php
/*******************************************************************************
* FAQ
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/faq.inc';
$gyfaq = new GY_faq();
$result = $gyfaq->FAQ_ok($userprefs[1], $lng);
$tconfig = $gyfaq->tconfig;
$topmess = $gyfaq->topmess;
switch ($result[0]) {
case 'h1' : header('HTTP/1.0 403 Forbidden');
case 'h2' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h3' : header('HTTP/1.0 404 Not Found');
case 'FAQ' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyfaq->FAQ_content();
$topmess = $gyfaq->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/favicon.ico'
wget 'https://lists2.roe3.org/guppy/formyposts.php'
<?php
/*******************************************************************************
* Forum My Publications
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.11 (March 09, 2023) : correction access Forum
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/forum.inc';
if ($serviz[13] == '') {
die('STOP ! Forum is not active !');
}
$gyforum = new GY_forum();
$gyforum->frtyp = 'FRMP';
$result = $gyforum->FR_ok($userprefs[1], $lng);
$tconfig = $gyforum->tconfig;
$topmess = $gyforum->topmess;
if ($result[0] == 'FRMP') {
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
exit();
}
$result = $gyforum->FR_myposts();
$topmess = $gyforum->topmess;
if (function_exists('htable1'))
htable1($topmess, $result[0], '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
?>
wget 'https://lists2.roe3.org/guppy/fortopic.php'
<?php
/*******************************************************************************
* Forum Topics
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.11 (March 09, 2023) : correction accesss Forum
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/forum.inc';
if ($serviz[13] == '') {
die('STOP ! Forum is not active !');
}
$widepage = $forum[3];
$gyforum = new GY_forum();
$gyforum->frtyp = 'FRT';
$result = $gyforum->FR_ok($userprefs[1], $lng);
$tconfig = $gyforum->tconfig;
$topmess = $gyforum->topmess;
if ($result[0] == 'FRT') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyforum->FRT_content();
include CHEMIN.'inc/hpage.inc';
if ($userprefs[3] == '' || $userprefs[3] == BOX_LEFT.BOX_RIGHT) {
$left_empty = array_reduce($xposbox[$tconfig][BOX_LEFT], 'EstNonVide', true);
$userprefs3 = $left_empty ? BOX_RIGHT : BOX_LEFT;
}
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/fortopicarch.php'
<?php
/*******************************************************************************
* Forum Topics Archive
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.11 (March 09, 2023) : correction access Forum
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/funcarch.php';
include CHEMIN.'inc/forum.inc';
if ($serviz[13] == '') {
die('STOP ! Forum is not active !');
}
$widepage = $forum[3];
$gyforum = new GY_forum();
$gyforum->frtyp = 'FRTA';
$result = $gyforum->FR_ok($userprefs[1], $lng);
$tconfig = $gyforum->tconfig;
$topmess = $gyforum->topmess;
if ($result[0] == 'FRTA') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyforum->FRTA_content();
$topmess = $gyforum->topmess;
if ($userprefs[3] == '' || $userprefs[3] == BOX_LEFT.BOX_RIGHT) {
$left_empty = array_reduce($xposbox[$tconfig][BOX_LEFT], 'EstNonVide', true);
$userprefs3 = $left_empty ? BOX_RIGHT : BOX_LEFT;
}
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/forum.php'
<?php
/*******************************************************************************
* Forum
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaim�
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.11 (March 09, 2023) : correction access Forum
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/forum.inc';
if ($serviz[13] == '') {
die('STOP ! Forum is not active !');
}
$widepage = $forum[3];
$gyforum = new GY_forum();
$gyforum->frtyp = 'FR';
$result = $gyforum->FR_ok($userprefs[1], $lng);
$tconfig = $gyforum->tconfig;
$topmess = $gyforum->topmess;
if ($result[0] == 'FR') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyforum->FR_content();
$topmess = $gyforum->topmess;
if ($userprefs[3] == '' || $userprefs[3] == BOX_LEFT.BOX_RIGHT) {
$left_empty = array_reduce($xposbox[$tconfig][BOX_LEFT], 'EstNonVide', true);
$userprefs3 = $left_empty ? BOX_RIGHT : BOX_LEFT;
}
if ($result[1] == 1) {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
header("location:index.php?lng=".$lng);
btable();
include 'inc/bpage.inc';
exit();
}
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/forumarch.php'
<?php
/*******************************************************************************
* Forum Archive
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.15 (November 29, 2023) : Correction archive functionnality
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/funcarch.php';
include CHEMIN.'inc/forum.inc';
if ($serviz[13] == '') {
die('STOP ! Forum is not active !');
}
$widepage = $forum[3];
$gyforum = new GY_forum();
$gyforum->frtyp = 'FRA';
$result = $gyforum->FR_ok($userprefs[1], $lng);
$tconfig = $gyforum->tconfig;
$topmess = $gyforum->topmess;
if ($result[0] == 'FRA') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyforum->FRA_content();
$topmess = $gyforum->topmess;
if ($userprefs[3] == '' || $userprefs[3] == BOX_LEFT.BOX_RIGHT) {
$left_empty = array_reduce($xposbox[$tconfig][BOX_LEFT], 'EstNonVide', true);
$userprefs3 = $left_empty ? BOX_RIGHT : BOX_LEFT;
}
if ($result[1] == 1) {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
$location = CHEMIN.($site['URLR'] == 'on' ?
$lng.'-'.$urlrw[5].'-6-'.$tconfig.$z2 :
'fortopicarch.php?lng='.$lng.'&tconfig='.$tconfig.$z2);
echo BeginJavascript().'window.location="'.$location.'"'.EndJavascript();
btable();
include 'inc/bpage.inc';
exit();
}
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/guestbk.php'
<?php
/*******************************************************************************
* Guestbook
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/guestbk.inc';
$gygbk = new GY_guestbk();
$result = $gygbk->GBK_ok($userprefs[1], $lng);
$tconfig = $gygbk->tconfig;
$topmess = $gygbk->topmess;
switch ($result[0]) {
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'GBK' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gygbk->GBK_content();
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/links.php'
<?php
/*******************************************************************************
* Links
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/links.inc';
$gylnk = new GY_links();
$topmess = $gylnk->topmess;
$tconfig = $gylnk->tconfig;
$result = $gylnk->LNK_ok($userprefs[1], $lng);
switch ($result[0]) {
case 'h0' : header('HTTP/1.0 403 Forbidden');
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'LNK' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gylnk->LNK_content();
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/lostpass.php'
<?php
/*******************************************************************************
* Lost password
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/user.inc';
$gylost = new GY_user();
$result = $gylost->LOST_content();
$tconfig = $gylost->tconfig;
$topmess = $gylost->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/lstest.php'
<?php
/*******************************************************************************
* Text slideshow
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
define('LSDATAREP', CHEMIN.DATAREP.'other/liquidslider/');
$tconfig = import('tconfig', '', true, 0);
$idls = import('idls', '', true, 0);
$lsdata = SelectDBFieldsByField(ReadDBFields(LSDATAREP.'lsindex.dtb'), 0, $idls);
$topmess = $lsdata[0][$lng == $lang[0] ? 2 : 3];
$text = ReadFullDB(LSDATAREP.'lsconstr_'.$idls.'.inc');
include 'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'LS'.$tconfig, '100%');
else
htable($topmess, '100%');
if (!empty($text)) echo '
<div class="w-100">'.$text.'</div>';
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/maintenance.php'
<?php
/*******************************************************************************
* Maintenance
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
function ReadFullDB($fic) {
$DataDB = Array();
if (is_file($fic)) {
$DataDB = implode('', file($fic));
}
return $DataDB;
}
include 'inc/constantes.php';
include CONFIG;
$charset = 'UTF-8';
$z2 = '';
$lng = isset($_GET['lng']) ? strip_tags($_GET['lng']) : $lang[0];
if (empty($serviz[44])) header('location: index.php?lng='.$lng);
$lng = empty($lng) ? $lang[0] : (!in_array($lng, $lang) ? $lang[0] : $lng);
$aml0 = 'articles.php?lng='.$lng.'&pg='.$serviz[177].'&tconfig='.$serviz[178];
$aml1 = $lng.'-'.$urlrw[20].'-102-'.$serviz[177].'-'.$serviz[178];
$aml = '<a href="'.(!empty($serviz[177]) ? CHEMIN.($site['URLR'] == 'on' ? $aml1 : $aml0).$z2 : '#').'" title="">';
$wbm0 = $site['PG'].'.php?lng='.$lng.'&typ='.TYP_MAIL;
$wbm1 = $lng.'-'.$urlrw[14].'-'.TYP_MAIL;
$wbm = '<a href="'.CHEMIN.($site['URLR'] == 'on' ? $wbm1 : $wbm0).$z2.'" title="">';
$web[691] = 'Site en maintenance';
$web[692] = '<p>Site en maintenance pour quelques minutes.</p><p>...</p><p>Nous sommes désolés pour la gêne occasionnée, à bientôt.</p>';
$title0 = ' - '.$web[691];
$texte0 = ' - '.$web[692];
$title1 = $texte1 = '';
$web[691] = 'Site under maintenance';
$web[692] = '<p>This site is currently under maintenance.</p><p>...</p><p>We apologize for the inconvenience. Please, come back soon...</p>';
$title1 = ' - '.$web[691];
$texte1 = ' - '.$web[692];
echo '<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset='.$charset.'" />
<title>'.stripslashes($site[($lang[0] == $lng ? 0 : 11)]).$title0.$title1.'</title>
<meta http-equiv="Refresh" Content="60; index.php" />
<link rel="stylesheet" href="'.CHEMIN.'inc/img/general/general.css" />
<style>
body {
background-color: azure;
text-align: center;
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 20px;
}
a, img, span, table {
border-style: none;
vertical-align: middle;
}
</style>
</head>
<body>
<div style="width: 640px; border: 1px solid; text-align: center; margin: auto;">
<div style="margin:auto; padding: 25px;">
<strong>*** '.stripslashes($site[($lang[0] == $lng ? 0 : 11)]).' ***</strong>
</div>
<div style="display:inline-block; padding:5px; width: 200px; font-size: 0.85em;">
'.$texte0.'
</div>
<div style="display:inline-block; padding: 72px 15px 5px 5px; text-align: center; vertical-align: top; width: 160px;">
<i class="gen-maintenance"></i>
</div>
<div style="display:inline-block; padding: 5px; width: 200px; font-size: 0.85em;">
'.$texte1.'
</div>
<p style="padding: 10px;">
<a href="http://www.freeguppy.org">
<i class="gen-gyslogo"></i>
</a>
<br />
<a class="copyright" href="https://www.freeguppy.org/" title="" target="_blank">
<i class="gen-gypower"></i>
</a>
<span style="font-size: 0.7em; font-weight: normal;"> © '.MP_COPYRIGHT.' </span>
<a class="copyright" href="http://cecill.info/index.'.$lng.'.html" title="" target="_blank">
<i class="gen-gycecill-'.($lng == 'fr' ? 'f' : 'e').'"></i>
</a>
</p>
</div>
</body>
</html>';
?>
wget 'https://lists2.roe3.org/guppy/memberlist.php'
<?php
/*******************************************************************************
* Member list
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/user.inc';
$gylstmb = new GY_user();
$result = $gylstmb->LSTMB_ok($userprefs[1], $lng);
$tconfig = $gylstmb->tconfig;
if (!empty($result[0])) {
$topmess = $gylstmb->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gylstmb->LSTMB_content();
$topmess = $gylstmb->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/memberprf.php'
<?php
/*******************************************************************************
* Member profile
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/user.inc';
$gymemb = new GY_user();
$result = $gymemb->MEMB_ok($userprefs[1], $lng);
$tconfig = $gymemb->tconfig;
if (!empty($result[0])) {
$topmess = $gymemb->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gymemb->MEMB_content();
$topmess = $gymemb->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/news.php'
<?php
/*******************************************************************************
* News
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/news.inc';
$gynews = new GY_news();
$result = $gynews->NEWS_ok($userprefs[1], $lng);
$tconfig = $gynews->tconfig;
$topmess = $gynews->topmess;
switch ($result[0]) {
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'NEW' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gynews->NEWS_content();
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/newsarch.php'
<?php
/*******************************************************************************
* Archived News
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/newsarch.inc';
$gynwa = new GY_newsarch();
$result = $gynwa->NWA_ok($userprefs[1], $lng);
$tconfig = $gynwa->tconfig;
$topmess = $gynwa->topmess;
switch ($result[0]) {
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'NWA' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gynwa->NWA_content();
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/newsletter.php'
<?php
/*******************************************************************************
* Newsletter
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/newsletter.inc';
$gynwl = new GY_newsletter();
$result = $gynwl->NWL_ok($userprefs[1], $lng);
$tconfig = $gynwl->tconfig;
$topmess = $gynwl->topmess;
if ($result[0] == 'NWL') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gynwl->NWL_content();
$tconfig = $gynwl->tconfig;
$topmess = $gynwl->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/newsrss.php'
<?php
/*******************************************************************************
* News RSS
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/newsrss.inc';
$gyrss = new GY_newsrss();
$result = $gyrss->RSS_ok($userprefs[1], $lng);
$tconfig = $gyrss->tconfig;
$topmess = $gyrss->topmess;
if ($result[0] == 'BSS') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyrss->RSS_content();
$topmess = $gyrss->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/photorama.php'
<?php
/*******************************************************************************
* Photos
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/photorama.inc';
$gyph = new GY_photo();
$gyph->phtyp = 'PH';
$result = $gyph->PH_ok($userprefs[1], $lng);
$tconfig = $gyph->tconfig;
$widepage = $gyph->widepage;
$topmess = $gyph->topmess;
$userprefs3 = $gyph->userprefs3;
switch ($result[0]) {
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'PH' :
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyph->PH_content();
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/photorama2.php'
<?php
/*******************************************************************************
* Photos
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/photorama.inc';
$gyph = new GY_photo();
$gyph->phtyp = 'PH2';
$result = $gyph->PH_ok($userprefs[1], $lng);
$tconfig = $gyph->tconfig;
$widepage = $gyph->widepage;
switch ($result[0]) {
case 'h1' : header('location:'.$site[3].'error.php?lng='.$lng.'&err=404');
case 'h2' : header('HTTP/1.0 404 Not Found');
case 'PH2' :
$topmess = $gyph->topmess;
$userprefs3 = $gyph->userprefs3;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyph->PH2_content();
$topmess = $gyph->topmess;
$userprefs3 = $gyph->userprefs3;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/postguest.php'
<?php
/*******************************************************************************
* Guest Post Routine
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2023 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.18 (February 11, 2024) : add crypt in unlock post
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
$crypt = isset($_POST['crypt']) ? strip_tags($_POST['crypt']) : NULL;
$cryptok = (!$crypt) ? false : chk_crypt($crypt);
$actioncomplete = '';
function TestCoherenceSoumission($typ, $pg, $num = null) {
global $type, $fielda1;
switch ($typ) {
case TYP_REACT :
if (FileDbExist(DBBASE.TestFileId($pg).INCEXT)) {
ReadDoc($pg);
return $type == TYP_ART;
} else {
return FALSE;
}
break;
case TYP_REBLOG :
if (FileDbExist(DBBASE.TestFileId($pg).INCEXT)) {
ReadDoc($pg);
return $type == TYP_BLOG;
} else {
return FALSE;
}
break;
case TYP_THREAD :
if (FileDbExist(DBBASE.TestFileId($pg).INCEXT)) {
ReadDoc($pg);
if ($type != TYP_FORUM) {
return FALSE;
} else {
return $fielda1 == $num;
}
} else {
return FALSE;
}
break;
default :
return TRUE;
}
}
function FindIndexDBFields($fic, $submit0, $submit1, $submit2) {
if (FileDBExist($fic)) {
$DataDB = ReadDBFields($fic);
for ($i = 0; $i < count($DataDB); $i++) {
if (@stristr($DataDB[$i][0],$submit0)
&& @stristr($DataDB[$i][1],$submit1)
&& @stristr($DataDB[$i][2],$submit2)) {
return $i;
}
}
}
return FALSE;
}
function ctrlMail($pseudo, $pemail) {
global $userprefs;
if ($pseudo == $userprefs[1]) {
return ($pemail == $userprefs[2]);
} else {
$dbmail = array();
// $bad = array('.', '..', 'index.php');
// $files = scandir(MSGREP);
// $files = array_diff($files, $bad);
$files = opendir(MSGREP);
$retour = true;
$retoura = '';
while ($file = readdir($files))
{
if (substr($file, -3) == 'dtb') {
$userdb = ReadDBFields(MSGREP.$file);
if (count($userdb) > 1 )
{
if (isset($userdb[1][3]))
{
$pos = strpos(@$userdb[1][3], "@");
if ($pos != false)
{
if (@$userdb[1][3] == $pemail) $retour = FALSE;
$retoura .= '
user: '.$file.' nbre ligne : '.count($userdb).' Mail: '.@$userdb[1][3]
;
}
else
$retoura .= '
Erreur formatage zone pas de adresse user: '.$file.' nbre ligne : '.count(@$userdb).' Mail: '.@$userdb[1][3]
;
}
else $retoura .= '
Erreur formatage zone non présente user: '.$file.' nbre ligne : '.count($userdb).' Mail: '.@$userdb[1][3]
;
}
else
$retoura .= '
Erreur nombre de lignes user: '.$file.' nbre ligne : '.count($userdb)
;
WriteFullDB(CONFIGREP.'suivipemail.dtb', $retoura);
}
}
closedir($files);
return $retour;
}
}
$REMOTE_ADDR = getIPadress($site[6] == 'on' ? (isset($_SERVER['HTTP_X_FORWARDED_FOR'])? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']): $_SERVER['REMOTE_ADDR']);
$PHP_SELF = $_SERVER['PHP_SELF'];
$HTTP_USER_AGENT = $_SERVER['HTTP_USER_AGENT'];
$SERVER_NAME = $_SERVER['SERVER_NAME'];
if (import('add', 'GET') != NULL) die('STOP ! Variable $add : illegal origine');
$add = import('add', 'POST');
$lng = import('lng');
$typ = import('typ');
switch ($add) {
case NULL :
$token = uniqid(rand(), true);
$token_time = time();
setcookie(POST_COOKIE, $token.CONNECTOR.$token_time, time() + (30 * 60), '/', $_DOMAIN, $_SECURE, $_HTTPONLY);
break;
case 1 :
if (isset($_COOKIE[POST_COOKIE]))
{
$tokens = explode(CONNECTOR, $_COOKIE[POST_COOKIE]);
$token_time = time() - (15 * 60);
}
else
{
$tokens[0] = '';
$tokens[1] = '0';
}
if (empty($tokens[0]) || $tokens[1] < time() - (30 * 60)) {
echo BeginJavascript().'
var sto = "'.str_replace('<br />', '\n', stripslashes($web[681])).'";
alert(sto);
'.EndJavascript();
$add = -1;
$token = uniqid(rand(), true);
$token_time = time();
setcookie(POST_COOKIE, $token.CONNECTOR.$token_time, time() + (30 * 60), '/', $_DOMAIN, $_SECURE, $_HTTPONLY);
}
elseif ($tokens[1] + 2 > time()) {
echo BeginJavascript().'
var sto = "'.str_replace('<br />', '\n', stripslashes($web[682])).'"; // Pour lutter contre les robots spammeurs,
alert(sto);
'.EndJavascript();
$add = -1;
$token = uniqid(rand(), true);
$token_time = time();
setcookie(POST_COOKIE, $token.CONNECTOR.$token_time, time() + (30 * 60), '/', $_DOMAIN, $_SECURE, $_HTTPONLY);
}
break;
default :
die('STOP ! Variable $add : illegal value ('.$add.')');
}
$dbcat = array();
if ($serviz[13] == 'on')
$dbcat = ReadDBFields(DBFORUMCAT);
$okfr = false;
if (!empty($dbcat))
{
foreach ($dbcat as $cat)
{
if (!isset($cat[5])) $cat[5] = '';
if ($cat[5] == 'on')
{
$okfr = true; break;
}
}
}
$cryptdisp = '';
switch ($typ) {
case TYP_FORUM :
case TYP_THREAD :
if ($serviz[13] == '' || !$okfr) {
die('STOP ! Forum is not active !');
}
$cryptdisp = $serviz[91];
$tconfig = $menuico[19] == 'ALL' ? import('tconfig', '', true, 0) : $menuico[19];
break;
case TYP_GUESTBK :
if ($serviz[12] == '') {
die('STOP ! Guest book is not active !');
}
$cryptdisp = $serviz[90];
$tconfig = $menuico[18] == 'ALL' ? import('tconfig', '', true, 0) : $menuico[18];
break;
case TYP_NEWS :
if ($serviz[8] == '' || $site[5] == 2) {
die('STOP ! News submit is not active !');
}
$cryptdisp = $serviz[89];
$tconfig = $menuico[12] == 'ALL' ? import('tconfig', '', true, 0) : $menuico[12];
break;
case TYP_BLOG :
if ($serviz[53] == '' || $site[30] == 2) {
die('STOP ! Blog submit is not active !');
}
$cryptdisp = $serviz[96];
$tconfig = $menuico[13] == 'ALL' ? import('tconfig', '', true, 0) : $menuico[13];
break;
case TYP_REBLOG :
if ($serviz[57] == 2) {
die('STOP ! Comment is not active !');
}
$cryptdisp = $serviz[97];
$tconfig = $menuico[13] == 'ALL' ? import('tconfig', '', true, 0) : $menuico[13];
break;
case TYP_REACT :
if ($serviz[29] == 2) {
die('STOP ! Reaction is not active !');
}
$cryptdisp = $serviz[92];
$tconfig = import('tconfig', '', true, 0);
break;
case TYP_RECO :
if ($serviz[62] == '') {
die('STOP ! Recommander is not active !');
}
$cryptdisp = $serviz[94];
$tconfig = import('tconfig', '', true, 0);
break;
case TYP_MAIL :
if ($user[3] == '') {
die('STOP ! Mail is not active !');
}
$cryptdisp = $serviz[95];
$tconfig = import('tconfig', '', true, 0);
break;
default :
die('STOP ! Variable $typ : illegal value ('.$typ.')');
}
switch ($lng) {
case $lang[0] :
case $lang[1] :
break;
default :
die('STOP ! Variable $lng : illegal value ('.$lng.')');
}
$pseudo = import('pseudo', 'POST', true, '');
$ctrl_spam = import('code_pseudo', 'POST');
$pemail = import('pemail', 'POST');
$pehide = import('pehide', 'POST', true, '');
$pfmail = import('pfmail', 'POST');
$ptit = import('ptit', 'POST', false);
$purl = import('purl', 'POST');
$cat = import('cat');
$tocat = import('tocat');
$catforum = getForumCatFull(import('catforum', 'POST'));
$rub = import('rub', 'POST', false);
$num = import('num');
$antispam = import('antispam', 'POST');
$mod = import('mod');
$group = import('group', 'POST');
$index = import('index');
$replymail = import('replymail');
$noreply = import('noreply');
$filesign = import('filesign', 'POST');
$pg = import('pg');
$rgpd = import('rgpd', 'POST', true, '');
require CHEMIN.'inc/ckeditor_config/editors_functions.php';
require_once CHEMIN.'inc/htmlpurifier/library/HTMLPurifier.auto.php';
$configpg = HTMLPurifier_Config::createDefault();
$configpg->set('HTML.Allowed', '
p[class|id|style],div[class|id|style],strong,em,u,b,sub,sup,span[class|style],pre[class],blockquote[class|style],
a[href|target|title|style],img[src|alt|style],ul[style],ol[start|style],li');
$configpg->set('Attr.AllowedFrameTargets', array('_blank', '_self'));
$purifier = new HTMLPurifier($configpg);
$ptxt = import('ptxt', 'POST', FALSE);
$ptxt = $purifier->purify(isAuthorImg($userprefs[1]) ? $ptxt : getPGTXT($ptxt));
$pmess = str_replace("inc/img", $site[3]."inc/img", $ptxt);
if (1 != $add && -1 != $add && !TestCoherenceSoumission($typ, $pg, $num)) die('STOP ! Problème de cohérence !');
$data = array_pad(array(), 18, '');
$pseudo = KeepGoodChars(RemoveConnector(RemoveQuote(stripslashes(CutLongWord(strip_tags($pseudo), max($serviz[148], 80))))));
$pemail = checkEmail(CutLongWord($pemail));
$pfmail = checkEmail(CutLongWord($pfmail));
$purl = checkUserWebsiteUrl(CutLongWord($purl, 80));
$ptit = WrapLongWords(CutLongWord($ptit, 100));
$ptit = ReplaceSpecialChars($ptit);
$err_pseudo = empty($pseudo) && ($add == 1 || $add == -1) ? true : false;
$err_pemail = empty($pemail) && ($add == 1 || $add == -1) ? true : false;
$err_pfmail = empty($pfmail) && ($add == 1 || $add == -1) && $typ == TYP_RECO ? true : false;
$err_ptit = empty($ptit) && empty($mod) && ($add == 1 || $add == -1) ? true : false;
$err_crypt = $serviz[100] != '0' && $cryptdisp == 'on' && ($userprefs[1] == '' || $serviz[98] == '') && !$cryptok && ($add == 1 || $add == -1) ? true : false;
$err_ptxt = empty($ptxt) && ($add == 1 || $add == -1) && !in_array($mod, array('lock', 'up', 'raz', 'top')) && $typ != TYP_RECO ? true : false;
$err_rgpd = !empty($serviz[177]) && empty($rgpd) && !OK_RGPD_date($userprefs[1]) && ($add == 1 || $add == -1) ? true: false;
$erreur = '';
$erreur .= $err_pseudo ? '<li>'.$web[266].'</li>': ''; // Caractères non valides (2 à caractères comprenant lettres non accentuées, chiffres et _-
$erreur .= $err_pemail ? '<li>'.$web[42].'</li>': '';
$erreur .= $err_pfmail ? '<li>'.$web[122].'</li>': '';
$erreur .= $err_ptit ? '<li>'.$web[123].'</li>': '';
$erreur .= $err_ptxt ? '<li>'.$web[43].'</li>': '';
$erreur .= $err_crypt ? '<li>'.$web[529].'</li>': ''; //code de sécurité invalide !
$erreur .= $err_rgpd ? '<li>'.$web[405].'</li>': ''; // l'acceptation des conditions est requise
$add = (empty($ptit) && empty($mod)) || $err_ptxt || $err_pseudo || $err_pemail || $err_crypt || !empty($ctrl_spam) ? null : $add;
if ($mod == 'top') {
$forum6 = import('forum6');
$forum[6] = empty($forum6) ? $forum[6] : $forum6;
}
$ok = $web[45];
$infos = 'IP: '.$REMOTE_ADDR.' ('.gethostbyaddr($REMOTE_ADDR).')<br />Referer : '.$PHP_SELF.'<br />Browser : '.$HTTP_USER_AGENT;
if ($add == 1 && empty($erreur)) {
if (!empty($log3)) {
$url = parse_url($log3);
$host = isset($url['host']) ? $url['host'] : '';
$ip = gethostbyname($host);
if (!empty($host) && $ip != $host) {
if ($host != $SERVER_NAME && $host != 'www.'.$SERVER_NAME) {
die("STOP ! Illegal action from '$host' (IP=$ip)");
}
}
}
$ctrl_ident = true;
if (!in_array($typ, array(TYP_RECO, TYP_MAIL)) && is_file(MSGREP.$pseudo.DBEXT) && $pseudo != $userprefs[1]) {
$erreur .= '<li>'.$web[392].'</li>'; // Ce pseudo est déjà utilisé !!!
$ctrl_ident = false;
}
if (!ctrlMail($pseudo, $pemail)) {
$erreur .= '<li>'.$web[375].'</li>'; // Ce courriel est inconnu ou est déjà utilisé !!!
$ctrl_ident = false;
}
if ($ctrl_ident) {
$index = FindIndexDBFields(DBANTISPAM, $antispam, $REMOTE_ADDR, $typ);
if ($index === false && $typ != TYP_RECO) {
/*******************************************************************
* Créez le fichier inc/postguest_antispam.inc pour ajouter ici
* la ou les actions que vous souhaitez
* par exemple : mail à l'administrateur, inscription dans un fichier...
******************************************************************
* Create a file inc/postguest_antispam.inc
* to add here the action which you wish
* for example: e-mail with the administrator, inscription in a file...
******************************************************************/
if (is_file('inc/postguest_antispam.inc')) include 'inc/postguest_antispam.inc';
die('STOP ! Anti-SPAM !');
}
else {
DeleteDBFieldById(DBANTISPAM, $index);
if ($typ == TYP_THREAD && !preg_match('!^[1-9][0-9]*$!', $num)) {
die('STOP ! num : '.$num.' illegal value!');
}
if ($userprefs[1] == '') {
switch ($typ) {
case TYP_NEWS :
if (!isAccessGranted($members[8])) die('STOP ! News : '.$web[342].' !');
break;
case TYP_BLOG :
if (!isAccessGranted($members[16])) die('STOP ! Blog : '.$web[342].' !');
break;
case TYP_GUESTBK :
if (!isAccessGranted($members[9])) die('STOP ! Guest book : '.$web[342].' !');
break;
case TYP_FORUM :
case TYP_THREAD :
if (!isAccessGranted($members[10])) die('STOP ! Forum : '.$web[342].' !');
break;
case TYP_REACT :
if (!isAccessGranted($members[11]) || !isAccessGranted($members[1])) die('STOP ! Reaction : '.$web[342].' !');
break;
case TYP_REBLOG :
if (!isAccessGranted($members[17]) || !isAccessGranted($members[15])) die('STOP ! Comments : '.$web[342].' !');
break;
}
}
}
if (!empty($userprefs[1]) && $rgpd == 'on') setRGPDdate();
$datefrmt = FormatDate(GetCurrentDateTime());
if ($mod == '' && !$erreur) {
if ($typ == TYP_THREAD && $serviz[41] != '1') {
$dbworkmail = ReadDBFields(DBFORUM);
for ($i = 0; $i < count($dbworkmail); $i++) {
if ($num == $dbworkmail[$i][1]){
$sujetthread = $dbworkmail[$i][5];
$catthread = $dbworkmail[$i][12];
break;
}
}
$dbmailuniq = Array();
$dbworkuniq = ReadDBFields(DBTHREAD);
for ($i = 0; $i < count($dbworkuniq); $i++) {
if ($num == $dbworkuniq[$i][1] && $dbworkuniq[$i][2] == 0) {
$pgview = $dbworkuniq[$i][3];
}
if ($num == $dbworkuniq[$i][1] && $dbworkuniq[$i][9] == 'on') {
$dbmailuniq[] = $dbworkuniq[$i][5];
}
}
if ($noreply == 'on') {
for ($i = 0; $i < count($dbworkuniq); $i++) {
if ($num == $dbworkuniq[$i][1] && $dbworkuniq[$i][5] == $pemail && $dbworkuniq[$i][9] == 'on') {
$dbworkuniq[$i][9] = '';
}
}
WriteDBFields(DBTHREAD, $dbworkuniq);
}
$mailuniq = ValUnique($dbmailuniq);
for ($i = 0; $i < count($mailuniq); $i++) {
$to = $mailuniq[$i];
$sujet = $web[345].' '.$sujetthread;
$bodycorps = $web[346].$sujetthread.'<br /><br />';
$bodycorps .= $web[109].'<hr />'.ForceToAbsolute(stripslashes($ptxt)).'<hr /><br />';
$bodycorps .= $web[347].'<br />';
$bodycorps .= '<a href="'.$site[3].($site['URLR'] == 'on' ? $lng.'-'.$urlrw[5].'-5-'.$pgview.'-'.$catthread.$z2 : $site['TH'].'.php?lng='.$lng.'&pg='.$pgview.'&cat='.$catthread.$z2).'">';
$bodycorps .= $site[3].($site['URLR'] == 'on' ? $lng.'-'.$urlrw[5].'-5-'.$pgview.'-'.$catthread.$z2 : $site['TH'].'.php?lng='.$lng.'&pg='.$pgview.'&cat='.$catthread.$z2);
$bodycorps .= '</a><br /><br />';
$bodycorps .= $web[348].'<br />'.$user[0];
eMailHtmlTo($sujet, $bodycorps, $to);
}
}
if (in_array($typ, array(TYP_NEWS, TYP_BLOG, TYP_GUESTBK, TYP_FORUM, TYP_THREAD, TYP_REACT, TYP_REBLOG))) {
$data = array_fill(0, 18, '');
$data[0] = $typ == TYP_THREAD ? TYP_FORUM : $typ;
switch ($typ) {
case TYP_NEWS :
$data[2] = $site[5] == 1 ? 'i' : 'a';
$ok = $site[5] == 1 ? $web[48] : $ok;
break;
case TYP_BLOG :
$data[2] = $site[30] == 1 ? 'i' : 'a';
$ok = $site[30] == 1 ? $web[48] : $ok;
break;
case TYP_REBLOG :
$data[2] = $serviz[57] == 1 ? 'i': 'a';
$ok = $serviz[57] == 1 ? $web[48] : $ok;
break;
case TYP_GUESTBK :
if ($serviz[12] == 'on') {
$data[2] = $serviz[40] == 1 ? 'i' : 'a';
$ok = $serviz[40] == 1 ? $web[48] : '';
}
break;
case TYP_FORUM :
case TYP_THREAD :
if ($serviz[13] == 'on' && $okfr) {
$data[2] = $serviz[41] == 1 ? 'i' : 'a';
$ok = $serviz[41] == 1 ? $web[48] : '';
}
break;
case TYP_REACT :
$data[2] = $serviz[29] == 1 ? 'i' : 'a';
$ok = $serviz[29] == 1 ? $web[48] : $ok;
break;
default :
$data[2] = 'a';
$ok = '';
break;
}
$data[5] = $pseudo;
$data[6] = $pemail;
switch ($typ) {
case TYP_BLOG :
$dbr = ReadDBFields(DBINDEX.TYP_BRUB.DBEXT);
$rb = SelectDBFieldsByField($dbr, ($lng == $lang[0] ? 0 : 1), $rub);
$data[7] = (empty($rb) ? $rub : $rb[0][0]);
$data[8] = (empty($rb) ? $rub : $rb[0][1]);
break;
case TYP_GUESTBK :
$data[7] = GetNextChildNumber($typ);
break;
case TYP_REACT :
case TYP_REBLOG :
$data[7] = GetNextChildNumber($typ, $pg);
$data[8] = $pg;
break;
case TYP_FORUM :
$catthread = getForumCatFull(empty($catthread) ? $catforum : $catthread);
if ($serviz[41]) {
$data[7] = 1;
$dbwork = SelectDBFieldsByNotStatus(SelectDBFields(TYP_FORUM, '', ''), 'd');
if (count($dbwork) > 0) {
$data[7] = ReadCounter(DBFORUMCOUNTER)+1;
WriteCounter(DBFORUMCOUNTER,$data[7]);
}
}
else {
$dbthrd = array();
$dbwork = ReadDBFields(DBFORUM);
for ($i = 0; $i < count($dbwork); $i++) {
$dbthrd[] = $dbwork[$i][1];
}
@rsort($dbthrd);
if (!empty($dbthrd)) {
$data[7] = $dbthrd[0] + 1;
WriteCounter(DBFORUMCOUNTER,$data[7]);
}
else {
$data[7] = ReadCounter(DBFORUMCOUNTER)+1;
WriteCounter(DBFORUMCOUNTER,$data[7]);
}
}
$data[8] = '0';
break;
case TYP_THREAD :
$data[7] = $num;
$data[8] = GetNextChildNumber(TYP_FORUM, $num);
$dbns = IndexDbFieldsByField(ReadDbFields(DBFORUM), 1);
$catforum = getForumCatFull($dbns[$num][12]);
unset($dbns);
break;
}
switch ($typ) {
case TYP_GUESTBK :
$data[9] = $purl;
$data[11] = PutBR($ptxt);
break;
case TYP_FORUM :
case TYP_THREAD :
$data[9] = $typ == TYP_FORUM ? $ptit : '';
$data[10] = getForumCatFull($catforum);
if (!empty($userprefs[6])) {
$data[11] = PutBR($ptxt).'<p class="text-right thsign">'.ReplaceFrSigns($userprefs[6]).'</p>';
}
else {
$data[11] = PutBR($ptxt);
}
$data[12] = $userprefs[8];
if (!empty($userprefs[1])) {
$idcountmsg = ReadCounter(COUNTMSGREP.$pseudo.DBEXT) + 1;
}
else {
$idcountmsg = 'v';
}
$data[14] = $idcountmsg;
$data[15] = $userprefs[9];
$data[16] = $replymail;
break;
case TYP_REACT :
case TYP_REBLOG :
$data[11] = PutBR($ptxt);
$data[17] = $group; /// modif accès privé
break;
default :
if ($site[5] == '0') {
$data[9] = $ptit;
$data[10] = $ptit;
$data[11] = PutBR($ptxt);
$data[12] = PutBR($ptxt);
}
else {
$data[9] = $ptit;
$data[11] = PutBR($ptxt);
$data[12] = PutBR($ptxt);
}
break;
}
$data[13] = $pehide == 'on' ? 'on' : '';
if (!empty($userprefs[1]) && ($typ == TYP_FORUM) || ($typ == TYP_THREAD)) {
$idcountmsg = ReadCounter(COUNTMSGREP.$pseudo.DBEXT) + 1;
WriteCounter(COUNTMSGREP.$pseudo.DBEXT,$idcountmsg);
}
$id = ActionOnFields('add', $data);
$ok = $web[46]; // Merci de votre contribution
UpdateSitemaps($typ);
}
elseif ($typ != TYP_RECO) {
$ok = $web[47]; // Cette saisie n'est pas valide !
}
if ($typ == TYP_MAIL || $typ == TYP_RECO) {
$ok = $web[46]; // Merci de votre contribution
}
}
else { // cas modif thread ou blog
include 'inc/'.($typ == TYP_BLOG ? 'mod_blog' : 'mod_thread').'.inc';
$ok = $web[46]; // Merci de votre contribution
}
$replyto = trim($pseudo).'<'.trim($pemail).'>';
if ($supervision[2] == 'on' && $typ == TYP_NEWS) {
$eSub = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." ".$web[106];
$eMsg = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." - ".$web[106].", ".$web[104]." ".$datefrmt.".<br />";
$eMsg .= $web[107].stripslashes($pseudo)." (".stripslashes($pemail).").<br />";
$eMsg .= $web[108].stripslashes($ptit)."<br />";
$eMsg .= '<hr />'.$web[109].'<br />'.ForceToAbsolute(stripslashes($ptxt));
$eMsg .= "<hr />".$web[349]." : ".$web[354].$id;
$eMsg .= "<br />".$web[360].'<a href="'.$site[3].$site['NE'].".php?lng=".$lng."&pg=".$id.$z2.'">'.$site[3].$site['NE'].".php?lng=".$lng."&pg=".$id.'</a>';
$eMsg .= "<br />".$web[350].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=news&form=2&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=news&form=2&id=".$id.'</a>';
if ($site[5] == "1") {
$eMsg .= "<br />".$web[351].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=news&act=a&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=news&act=a&id=".$id.'</a>';
} else {
$eMsg .= "<br />".$web[352].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=news&act=i&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=news&act=i&id=".$id.'</a>';
}
$eMsg .= "<br />".$web[353].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=news&del=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=news&del=".$id.'</a>';
$eMsg .= "<hr />".$infos;
$maillist = GetListCollaboratorEmail(TYP_NEWS);
eMailHtmlTo($eSub, $eMsg, trim(implode(' ', $maillist).' '.trim($supervision[10]).' '.$user[1]), $user[1], '', $replyto);
}
if ($supervision[8] == "on" && $typ == TYP_BLOG && empty($mod)) {
$eSub = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." ".$web[396];
$eMsg = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." - ".$web[396].", ".$web[104]." ".$datefrmt.".<br />";
$eMsg .= $web[107].stripslashes($pseudo)." (".stripslashes($pemail).").<br />";
$eMsg .= $web[108].stripslashes($ptit)."<br />";
$eMsg .= '<hr />'.$web[109].'<br />'.ForceToAbsolute(stripslashes($ptxt));
$eMsg .= "<hr />".$web[349]." : ".$web[354].$id;
$eMsg .= "<br />".$web[360].'<a href="'.$site[3].$site['BL'].".php?lng=".$lng."&pg=".$id.$z2.'">'.$site[3].$site['BL'].".php?lng=".$lng."&pg=".$id.'</a>';
$eMsg .= "<br />".$web[350].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=blog&form=2&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=blog&form=2&id=".$id.'</a>';
if ($site[30] == "1") {
$eMsg .= "<br />".$web[351].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=blog&act=a&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=blog&act=a&id=".$id.'</a>';
} else {
$eMsg .= "<br />".$web[352].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=blog&act=i&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=blog&act=i&id=".$id.'</a>';
}
$eMsg .= "<br />".$web[353].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=blog&del=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=blog&del=".$id.'</a>';
$eMsg .= "<hr />".$infos;
$maillist = GetListCollaboratorEmail(TYP_BLOG);
eMailHtmlTo($eSub, $eMsg, trim(implode(' ', $maillist).' '.trim($supervision[10]).' '.$user[1]), $user[1], '', $replyto);
}
if ($supervision[9] == "on" && $typ == TYP_REBLOG) {
$eSub = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." ".$web[379]." ".$web[381];
$eMsg = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." - ".$web[379]." ".$web[381].", ".$web[104]." ".$datefrmt.".<br />";
$eMsg .= $web[107].stripslashes($pseudo)." (".stripslashes($pemail).").<br />";
ReadDoc($pg);
$eMsg .= $web[183]." - ".$fieldb1."<br />";
$eMsg .= '<hr />'.$web[109].'<br />'.ForceToAbsolute(stripslashes($ptxt));
$eMsg .= "<hr />".$web[349]." : ".$web[39].$data[7]." - ".$web[355].$fileid." - ".$web[356].$id;
$eMsg .= "<br />".$web[360].'<a href="'.$site[3].$site['BL'].".php?lng=".$lng."&pg=".$fileid."&reblog=".$id.$z2.'">'.$site[3].$site['BL'].".php?lng=".$lng."&pg=".$fileid."&reblog=".$id.'</a>';
$eMsg .= "<br />".$web[350].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=reblog&form=2&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=reblog&form=2&id=".$id.'</a>';
if ($serviz[57] == "ok") {
$eMsg .= "<br />".$web[351].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=reblog&act=a&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=reblog&act=a&id=".$id.'</a>';
} else {
$eMsg .= "<br />".$web[352].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=reblog&act=i&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=reblog&act=i&id=".$id.'</a>';
}
$eMsg .= "<br />".$web[353].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=reblog&del=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=reblog&del=".$id.'</a>';
$eMsg .= "<hr />".$infos;
$maillist = GetListCollaboratorEmail(TYP_REBLOG);
eMailHtmlTo($eSub, $eMsg, trim(implode(' ', $maillist).' '.trim($supervision[10]).' '.$user[1]), $user[1], '', $replyto);
}
if ($supervision[3] == "on" && $typ == TYP_GUESTBK) {
$eSub = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." ".$web[113];
$eMsg = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." - ".$web[113].", ".$web[104]." ".$datefrmt.".<br />";
$eMsg .= $web[107].stripslashes($pseudo)." (".stripslashes($pemail).").<br />";
$eMsg .= $web[112].stripslashes($purl)."<br />";
$eMsg .= '<hr />'.$web[109].'<br />'.ForceToAbsolute(stripslashes($ptxt));
$eMsg .= "<hr />".$web[349]." : ".$web[39].$data[7]." - ".$web[354].$id;
$eMsg .= "<br />".$web[360].'<a href="'.$site[3].$site['GB'].".php?lng=".$lng."&pg=".$id.$z2.'">'.$site[3].$site['GB'].".php?lng=".$lng."&pg=".$id.'</a>';
$eMsg .= "<br />".$web[350].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=guestbk&form=2&id=".$id.'">'."admin/admin.php?lng=".$lng."&pg=guestbk&form=2&id=".$id.'</a>';
if ($serviz[40] != "") {
$eMsg .= "<br />".$web[351].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=guestbk&act=a&id=".$id.'">'."admin/admin.php?lng=".$lng."&pg=guestbk&act=a&id=".$id.'</a>';
} else {
$eMsg .= "<br />".$web[352].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=guestbk&act=i&id=".$id.'">'."admin/admin.php?lng=".$lng."&pg=guestbk&act=i&id=".$id.'</a>';
}
$eMsg .= "<br />".$web[353].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=guestbk&del=".$id.'">'."admin/admin.php?lng=".$lng."&pg=guestbk&del=".$id.'</a>';
$eMsg .= "<hr />".$infos;
$maillist = GetListCollaboratorEmail(TYP_GUESTBK);
eMailHtmlTo($eSub, $eMsg, trim(implode(' ', $maillist).' '.trim($supervision[10]).' '.$user[1]), $user[1], '', $replyto);
}
if ($supervision[6] == "on" && $typ == TYP_REACT) {
$eSub = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." ".$web[182];
$eMsg = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." - ".$web[182].", ".$web[104]." ".$datefrmt.".<br />";
$eMsg .= $web[107].stripslashes($pseudo)." (".stripslashes($pemail).").<br />";
ReadDoc($pg);
$eMsg .= $web[183]." - ".$fieldb1."<br />";
$eMsg .= '<hr />'.$web[109].'<br />'.ForceToAbsolute(stripslashes($ptxt));
$eMsg .= "<hr />".$web[349]." : ".$web[39].$data[7]." - ".$web[355].$fileid." - ".$web[356].$id;
$eMsg .= "<br />".$web[360].'<a href="'.$site[3]."articles.php?lng=".$lng."&pg=".$fileid."&react=".$id.$z2.'">'.$site[3]."articles.php?lng=".$lng."&pg=".$fileid."&react=".$id.'</a>';
$eMsg .= "<br />".$web[350].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=react&form=2&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=react&form=2&id=".$id.'</a>';
if ($serviz[29] == "1") {
$eMsg .= "<br />".$web[351].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=react&act=a&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=react&act=a&id=".$id.'</a>';
} else {
$eMsg .= "<br />".$web[352].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=react&act=i&id=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=react&act=i&id=".$id.'</a>';
}
$eMsg .= "<br />".$web[353].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=react&del=".$id.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=react&del=".$id.'</a>';
$eMsg .= "<hr />".$infos;
$maillist = GetListCollaboratorEmail(TYP_NEWS);
eMailHtmlTo($eSub, $eMsg, trim(implode(' ', $maillist).' '.trim($supervision[10]).' '.$user[1]), $user[1], '', $replyto);
}
if ($supervision[4] == "on" && ($typ == TYP_FORUM || $typ == TYP_THREAD)) {
$eSub = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." ".$web[114];
$eMsg = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." - ".$web[114].", ".$web[104]." ".$datefrmt.".<br />";
$eMsg .= $web[107].stripslashes($pseudo)." (".stripslashes($pemail).").<br />";
$dbforcat = ReadDBFields(DBFORUMCAT);
for ($i = 0; $i < count($dbforcat); $i++) {
if ($catforum == $dbforcat[$i][0]) {
if ($lng == $lang[0]) {
$eMsg .= $web[130]." : ".$dbforcat[$i][1];
}
else {
$eMsg .= $web[130]." : ".$dbforcat[$i][2];
}
break;
}
}
if ($typ == TYP_FORUM) {
$eMsg .= " - ".$web[110]."<br />";
$eMsg .= $web[108].stripslashes($ptit)."<br />";
}
else {
$eMsg .= ' - '.$web[111]."<br />";
}
$catthread = (!isset($catthread) || empty($catthread)) ? $catforum : $catthread;
$thrdid = GetThreadId($data[7]);
$eMsg .= '<hr />'.$web[109].'<br />'.ForceToAbsolute(stripslashes($ptxt));
$eMsg .= "<hr />".$web[349]." : ".$web[63].$data[7]." - ".$web[354].$fileid;
$eMsg .= "<br />".$web[360].'<a href="'.$site[3].$site['TH'].".php?lng=".$lng."&pg=".$thrdid.'&cat='.$catthread."&id=".ceil($data[8]/$serviz[20])."#R".$data[8].'">'.$site[3].$site['TH'].".php?lng=".$lng."&pg=".$thrdid.'&cat='.$catthread."&id=".ceil($data[8]/$serviz[20])."#R".$data[8].'</a>';
$eMsg .= "<br />".$web[350].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=forum&form=2&id=".$fileid.'&cat='.$catthread.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=forum&form=2&id=".$fileid.'</a>';
if ($serviz[41] != "") {
$eMsg .= "<br />".$web[351].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=forum&act=a&id=".$fileid.'&cat='.$catthread.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=forum&act=a&id=".$fileid.'</a>';
} else {
$eMsg .= "<br />".$web[352].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=forum&act=i&id=".$fileid.'&cat='.$catthread.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=forum&act=i&id=".$fileid.'</a>';
}
$eMsg .= "<br />".$web[353].'<a href="'.$site[3]."admin/admin.php?lng=".$lng."&pg=forum&del=".$fileid.'">'.$site[3]."admin/admin.php?lng=".$lng."&pg=forum&del=".$fileid.'</a>';
$eMsg .= "<hr />".$infos;
$maillist = GetListCollaboratorEmail(TYP_FORUM);
eMailHtmlTo($eSub, $eMsg, trim(implode(' ', $maillist).' '.trim($supervision[10]).' '.$user[1]), $user[1], '', $replyto);
}
if ($typ == TYP_RECO) {
$eSub = $web[125]." ".$pseudo;
$eMsg = $web[125]." ".$pseudo.", ".$web[104]." ".$datefrmt.".<br /><br />";
$eMsg .= $pseudo." - <a href=\"mailto:".$pemail."\">".stripslashes($pemail)."</a> - ".$web[126];
$eMsg .= " ".stripslashes($site[($lang[0] == $lng ? 0 : 11)])." (<a href='".$site[3]."'>".$site[3]."</a>).<br />";
$eMsg .= $web[127]." - <a href='mailto:".$pemail."'>".stripslashes($pemail)."</a> - ".$web[128]."<br /><br />";
eMailHtmlTo($eSub, $eMsg, $pfmail);
}
if ($typ == TYP_MAIL) {
$eSub = $ptit;
$eMsg = stripslashes($site[($lang[0] == $lng ? 0 : 11)])." - ".$web[330]." ".$pseudo." - <a href=\"mailto:".$pemail."\">".stripslashes($pemail)."</a> - ".$web[104]." ".$datefrmt.".<hr />";
$eMsg .= "<br />".ForceToAbsolute(stripslashes($pmess));
eMailHtmlTo($eSub, $eMsg, trim($supervision[10].' '.$pfmail), $pemail, '', $replyto);
}
}
}
else {
$antispam = md5(uniqid(rand()));
$antispams = ReadDBFields(DBANTISPAM);
$timestamp = microtime(TRUE);
array_push($antispams, array($antispam, $REMOTE_ADDR, $typ, $timestamp));
$timestamp -= $serviz[52] * 60;
while($antispams[0][3] < $timestamp) {
array_shift($antispams);
}
if (count($antispams) > $serviz[51]) {
array_shift($antispams);
}
WriteDBFields(DBANTISPAM, $antispams);
}
if (!empty($userprefs[1])) $pseudo = $userprefs[1];
if (!empty($userprefs[2])) $pemail = $userprefs[2];
switch ($typ) {
case TYP_GUESTBK :
$title = $web[41];
break;
case TYP_NEWS :
$title = $web[4];
break;
case TYP_BLOG :
$title = $web[386];
break;
case TYP_FORUM :
$title = $web[19];
break;
case TYP_RECO :
$title = $web[124];
break;
case TYP_REACT :
$title = $web[182];
break;
case TYP_REBLOG :
$title = $web[380];
break;
case TYP_MAIL :
$title = $web[215]." ".$web[11];
break;
default :
$title = $mod != "" ? $web[308]." ".$web[334] : $web[65];
}
$topmess = $title;
switch ($typ) {
case TYP_THREAD :
case TYP_FORUM :
if ($userprefs[3] =="" || $userprefs[3] == "LR") $userprefs3 = "L";
$widepage = $forum[3];
break;
case TYP_BLOG :
case TYP_REBLOG :
$widepage = '';
break;
default :
}
$headinc .= BeginJavascript().'
var clic = 0;
function VerifyForm() {
var sto = "";
var messok = "";
var erreur = false;
var largeur = 300;
var progbar = "'.@$site[28].'";
regexp = /^[-a-zA-Z0-9_]{2,'.$serviz[148].'}$/; // M Mardi
if (!regexp.test(document.rapporter.pseudo.value)) {
sto += " - '.addslashes($web[266]).'\n"; // Caractères non valides (2 à caractères comprenant lettres non accentuées, chiffres et _-
document.rapporter.pseudo.classname.replace("texte", "errorInputText");
erreur = true;
}
regexp = /^[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]+(\.[-a-z0-9!#$%&\'*+\\/=?^_`{|}~]+)*@(([a-z0-9à-ö]([-a-z0-9à-ö]*[a-z0-9à-ö]+)?){1,63}\.)+([a-z0-9à-ö]([-a-z0-9à-ö]*[a-z0-9à-ö]+)?){2,63}$/i;
if (!regexp.test(document.rapporter.pemail.value)) {
sto += " - '.addslashes($web[45]).'\n";
document.rapporter.pemail.classname.replace("texte", "errorInputText");
erreur = true;
}
if (!regexp.test(document.rapporter.pfmail.value)) {
sto += " - '.addslashes($web[122]).'\n"; //
document.rapporter.pfmail.classname.replace("texte", "errorInputText");
erreur = true;
}';
$headinc .= '
if (document.rapporter.ptit.value.search(/\w/) == -1) {
sto += " - '.addslashes($web[123]).'\n"; // Le titre est trop court ou inexistant.
document.rapporter.ptit.classname.replace("texte", "errorInputText");
erreur = true;
}';
if ($typ == TYP_GUESTBK) {
$headinc .= '
regexp = /(http|https):\/\/[a-z0-9à-ö-]+(.[a-z0-9à-ö-]+)*(:[0-9]+)?(\/.*)?$/i;
if (!regexp.test(document.rapporter.purl.value)) {
sto += " - '.addslashes($web[229]).'\n";
document.rapporter.purl.classname.replace("texte", "errorInputText");
erreur = true;
}';
}
if ($serviz[100] != '0' && $cryptdisp == 'on' && ($serviz[98] == '' || $userprefs[1] == '')) {
$headinc .= '
regexp = /^[a-zA-Z0-9_]{2,20}$/;
if (!regexp.test(document.rapporter.crypt.value)) {
sto += " - '.addslashes($web[529]).'\n";
document.rapporter.crypt.classname.replace("texte", "errorInputText");
erreur = true;
}';
}
$headinc .= '
if (erreur) {
sto = "'.addslashes($web[44]).'\n\n" + sto;
alert(sto);
return false;
}
else {
clic++;
if (clic == 1) {
return true;
}
else {
sto = "'.addslashes($web[220]).'" + sto;
alert(sto);
return false;
}
}
}
'.EndJavascript();
include 'inc/hpage.inc';
if (function_exists('htable1'))
htable1($title, 'PG'.$tconfig, '100%');
else
htable($title, '100%');
if (($typ == TYP_NEWS && !isAccessGranted($members[8])) ||
($typ == TYP_BLOG && !isAccessGranted($members[16])) ||
($typ == TYP_GUESTBK && !isAccessGranted($members[9])) ||
(($typ == TYP_FORUM || $typ == TYP_THREAD) && (!isAccessGranted($members[10]) || !isAccessGranted($members[5]))) ||
($typ == TYP_REACT && (!isAccessGranted($members[11]) || !isAccessGranted($members[1]))) ||
($typ == TYP_REBLOG && (!isAccessGranted($members[17]) || !isAccessGranted($members[15])))) {
echo '<p class="text-center">'.$web[342].'</p><br />';
if ($members[19] != '0' && $members[19] != '3') {
$href1 = CHEMIN.($site['URLR'] == 'on' ? $lng.'-'.$urlrw[3].'-0-'.$tconfig.$z2 : 'connect.php?lng='.$lng.'&tconfig='.$tconfig.$z2);
$href2 = CHEMIN.($site['URLR'] == 'on' ? $lng.'-'.$urlrw[15].'-5-new-'.$tconfig.$z2 : $site['USR'].'.php?lng='.$lng.'&uuser=new&tconfig='.$tconfig.$z2);
echo '
<p class="text-center">
'.SubmitButton($web[630], 'self.location.href=\''.$href1.'\'').
(empty($pseudo) ? ' '.SubmitButton($web[160], 'self.location.href=\''.$href2.'\'') : '').'
</p>';
}
}
else {
if ($ok == $web[45]) {
$pehide = 'off';
if ($typ == TYP_FORUM || $typ == TYP_THREAD) {
if (!empty($pg)) {
$dbpg = SelectDBFieldsById(ReadDBFields(DBFORUM), $num);
if (count($dbpg) != 0) {
$cat = $dbpg[0][12];
}
if (in_array($mod, array('maj', 'stop', 'move'))) {
CreateDir(TEMPREP);
ReadDoc($pg);
$lentxt = mb_strlen($fieldc1, $charset);
$possign = mb_strrpos($fieldc1, '<p class="text-right thsign">', 0, $charset);
$signforum = $possign !== false ? mb_substr($fieldc1, $possign, $lentxt, $charset) : '';
$mettre = '<?php $signforum = stripslashes("'.addslashes($signforum).'"); ?>';
$filesign = $userprefs[1].date('Ymdhi');
WriteFullDB(TEMPREP.$filesign, $mettre);
$ptxt = $signforum != '' ? mb_substr($fieldc1, 0, $lentxt - mb_strlen($signforum, $charset), $charset) : $fieldc1;
$pehide = $fieldd1;
$replymail = $fieldmail;
}
}
}
if ($typ == TYP_BLOG) {
if (!empty($pg) && $mod == 'maj') {
ReadDoc($pg);
$rub = $lang[0] == $lng ? $fielda1 : $fielda2;
$ptit = $lang[0] == $lng ? $fieldb1 : $fieldb2;
$ptxt = $lang[0] == $lng ? $fieldc1 : $fieldc2;
$pehide = $fieldd1;
}
}
if (!isForumAccessGranted($cat)){
echo '<p class="text-center font-weight-bold frnoaccess"><br />'.$web[443].'</strong><br /></p>';
} else {
if (!empty($erreur))
echo displayErrorMsg($web[44], $erreur);
echo '
<div class="w-98 mx-auto">
<p class="text-center"><strong>'.$ok.'</strong></p>
<form name="rapporter" action="'.($site['URLR'] == 'on' ? $urlrw[14].'-5'.$z2 : $site['PG'].'.php'.$z2).'" method="post" onsubmit="return VerifyForm(); return false;">
<input type="hidden" name="lng" value="'.$lng.'" />
<input type="hidden" name="typ" value="'.$typ.'" />
<input type="hidden" name="tconfig" value="'.$tconfig.'" />
<input type="hidden" name="antispam" value="'.$antispam.'" />
<input type="hidden" name="add" value="1" />';
if ($typ == TYP_FORUM && !empty($cat)) {
echo '
<input type="hidden" name="cat" value="'.$cat.'" />
<input type="hidden" name="catforum" value="'.$cat.'" />';
}
if ($typ == TYP_THREAD) {
echo '
<input type="hidden" name="filesign" value="'.$filesign.'" />
<input type="hidden" name="cat" value="'.$cat.'" />
<input type="hidden" name="tocat" value="'.$tocat.'" />
<input type="hidden" name="catforum" value="'.$cat.'" />
<input type="hidden" name="num" value="'.$num.'" />';
}
if ($typ != TYP_RECO && $typ != TYP_MAIL) {
echo '
<input type="hidden" name="pfmail" value="pf@mail.fr" />';
}
if ($typ == TYP_MAIL) {
echo '
<input type="hidden" name="pfmail" value="'.$user[1].'" />';
}
if ($typ == TYP_GUESTBK || $typ == TYP_RECO || $typ == TYP_THREAD || $typ == TYP_REACT || $typ == TYP_REBLOG) {
echo '
<input type="hidden" name="ptit" value="ptit" />';
}
if ($typ == TYP_REACT || $typ == TYP_REBLOG) {
echo '
<input type="hidden" name="pg" value="'.$pg.'" />';
}
if ($typ != TYP_GUESTBK) {
echo '
<input type="hidden" name="purl" value="http://fake" />';
}
echo '
<input class="d-none" type="text" name="code_pseudo" value="" />
<div class="table-responsive-md">
<div class="pgtbl d-table m-auto w-100">
<div class="d-table-row">
<div class="d-table-cell">
<div class="input-group pg360 m-auto pb-2">
<div class="input-group-prepend">
<span class="input-group-text"><i class="far fa-user"></i></span>
</div>
<input class="'.($err_pseudo ? 'errorInputText' : 'texte').' form-control" placeholder="'.$web[49].'"
type="text" name="pseudo" value="'.$pseudo.'" maxlength="'.$serviz[148].'" />
</div>
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell">
<div class="input-group pg360 m-auto pb-3">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-at"></i></span>
</div>
<input class="'.($err_pemail ? 'errorInputText' : 'texte').' form-control mt-2" placeholder="'.$web[50].'"
type="text" name="pemail" value="'.$pemail.'" />
</div>
</div>
</div>';
if ($typ != TYP_RECO && $typ != TYP_MAIL) {
echo '
<div class="d-table-row">
<div class="d-table-cell text-center form-check"><label for="pehide">'.$web[115].' </label>
<input type="checkbox" class="form-check-input" id="pehide" name="pehide"'.Checked($pehide == 'on').' />
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell text-center">'.$web[30].'</div>
</div>';
}
if ($typ == TYP_MAIL) {
echo '
<div class="d-table-row">
<div class="d-table-cell"><p>'.$web[281].'</p></div>
</div>
<div class="d-table-row">
<div class="d-table-cell">
<input class="'.($err_ptit ? 'errorInputText' : 'texte').' pg360 m-auto form-control"
type="text" name="ptit" value="'.$ptit.'" />
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell"><p>'.$web[56].'</p></div>
</div>';
}
if ($typ == TYP_NEWS) {
echo '
<div class="d-table-row">
<div class="d-table-cell text-center">
<div class="input-group pg360 m-auto py-3">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-heading"></i></span>
</div>
<input class="'.($err_ptit ? 'errorInputText' : 'texte').' form-control" placeholder="'.$web[54].'"
type="text" name="ptit" value="'.$ptit.'" />
</div>
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell text-center pt-2">'.$web[55].'</div>
</div>';
}
if ($typ == TYP_BLOG) {
if ($mod == 'maj') echo '
<input type="hidden" name="filesign" value="'.$filesign.'" />
<input type="hidden" name="pg" value="'.$pg.'" />
<input type="hidden" name="mod" value="maj" />';
echo '
<div class="d-table-row">
<div class="d-table-cell text-center pt-3">'.$web[21].'</div>
</div>
<div class="d-table-row">
<div class="d-table-cell w-100 mt-n2">';
$dbw = ReadDBFields(DBBRUB);
sort($dbw);
if (!empty($dbw)) {
$j = ($lng == $lang[0]) ? 0 : 1 ;
echo '
<select name="rub" class="form-control form-control-lg pg360 m-auto">
<option value=""> -- '.$web[471].' -- </option>';
foreach ($dbw as $birub) {
$cat = str_replace('<!--', '<!--', str_replace('-->', '-->', $birub[$j]));
echo '
<option value="'.$birub[$j].'"'.Selected($rub == $birub[$j]).'>'.$cat.'</option>';
}
echo '
</select>';
}
else {
echo '
<input class="texte m-auto form-control pg360" type="text" name="rub" size="45" value="'.$rub.'" />';
}
echo '
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell">
<div class="input-group pg360 m-auto pt-5">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-heading"></i></span>
</div>
<input class="'.($err_ptit ? 'errorInputText' : 'texte').' form-control" placeholder="'.$web[387].'"
type="text" name="ptit" value="'.$ptit.'" />
</div>
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell text-center pt-3">'.$web[388].'</div>
</div>';
}
if ($typ == TYP_REBLOG || $typ == TYP_REACT) {
ReadDoc($pg);
$txtbl = ($lng == $lang[0]) ? $fieldc1 : $fieldc2 ;
echo '
<div class="d-table-row">
<div class="d-table-cell text-center">
<div class="mt-5">'.$web[384].'</div>
<div class="rep m-auto w-95 text-left mt-2 pgrbra">'.stripslashes($txtbl).'</div>
<div class="mt-5"><b>'.$web[56].'</b></div>
<input type="hidden" name="group" value="'.$fieldmod.'" />
</div>
</div>';
}
if ($typ == TYP_GUESTBK) {
$purl = ($purl == 'https://' ? '' : $purl);
echo '
<div class="d-table-row">
<div class="d-table-cell">
<div class="input-group pg360 m-auto pt-5">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-globe"></i></span>
</div>
<input class="texte form-control" type="text" name="purl" value="'.$purl.'" placeholder="'.$web[51].'" />
</div>
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell text-center pt-5">'.$web[56].'</div>
</div>';
}
if ($typ == TYP_FORUM) {
echo '
<div class="d-table-row">
<div class="d-table-cell form-check text-center">
<p><label for="replymail">'.$web[344].' : </label>
<input type="checkbox" class="form-check-input" id="replymail" name="replymail" />
</p>
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell w-100">
<div class="input-group pg360 m-auto pt-1">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-heading"></i></span>
</div>
<input class="'.($err_ptit ? 'errorInputText' : 'texte').' form-control" placeholder="'.$web[64].'"
type="text" name="ptit" value="'.$ptit.'" />
</div>
</div>
</div>
<div class="d-table-row">
<div class="d-table-cell text-center pt-4">'.$web[56].'</div>
</div>';
}
if ($typ == TYP_RECO) {
echo '
<div class="d-table-row">
<div class="d-table-cell">
<div class="input-group pg360 m-auto pt-4">
<div class="input-group-prepend">
<span class="input-group-text"><i class="fas fa-at"></i></span>
</div>
<input class="'.($err_pfmail ? 'errorInputText' : 'texte').' form-control" placeholder="'.$web[121].'"
type="text" name="pfmail" value="'.$pfmail.'" />
</div>
</div>
</div>';
}
if ($typ == TYP_THREAD) {
if (!empty($pg)) {
$rank = ReadDBFields(ADMINS);
$modadm = ''; $moduser = '';
for ($y = 0; $y < count($rank); $y++) {
if ($rank[$y][0] == $userprefs[1] && $rank[$y][2] == 'on') {
$modadm = 'yes';
break;
}
}
if ($userprefs[1] == $serviz[31] || $userprefs[1] == $serviz[176]) {
$modadm = 'yes';
}
if (count(SelectDBFields(TYP_FORUM, 'a', $pg)) != 0) {
$dbtmp = ReadDBFields(DBTHREAD);
for ($i = 0; $i < count($dbtmp); $i++) { // search topic id
if ($dbtmp[$i][3] == $pg) {
$idth = $dbtmp[$i][1];
break;
}
}
for ($i = 0; $i < count($dbtmp); $i++) {
if ($dbtmp[$i][1] == $idth && $dbtmp[$i][6] != '') { // read topic
ReadDoc($dbtmp[$i][3]);
$st = explode('#',$fieldmod);
if ($st[0] == 'c' || $st[0] == 's' || $fielda1 != $num) { // if topic closed
if (($modadm != 'yes' || $mod != 'maj') && $mod != 'raz') {
echo BeginJavascript().'
alert("'.addslashes($web[47]).'");
window.history.back();'.EndJavascript();
die ('STOP !'.$web[47]);
}
}
unset($dbtmp);
break;
}
}
ReadDoc($pg);
}
$dbtmp = ReadDBFields(DBTHREAD);
foreach ($dbtmp as $tmp) {
if ($num == $tmp[1] && $tmp[5] == $pemail && $tmp[9] == 'on') {
$replymail = 'on';
break;
}
}
echo '
<div class="d-table-row">
<div class="d-table-cell text-center form-check">';
if ($replymail == 'on') echo '
<p><label for="noreply">'.$web[687].' : </label>
<input type="checkbox" class="form-check-input" id="noreply" name="noreply" />
</p>';
else echo '
<p><label for="replymail">'.$web[344].' : </label>
<input type="checkbox" class="form-check-input" id="replymail" name="replymail" />
</p>';
echo '
</div>
</div>';
if ($mod == '') { // cas normal
echo '
<div class="d-table-row">
<div class="d-table-cell text-center">'.$web[141].' <strong>'.$author.'</strong> '.$web[142].'</div>
</div>
<div class="d-table-row">
<div class="d-table-cell">
<div class="rep position-relative m-auto w-100 text-left pgc1">
'.stripslashes($fieldc1).'
</div>
<br />
</div>
</div>';
} else {
if ((($author == $userprefs[1]) || $modadm == 'yes' ||
(!empty($serviz[31]) && $serviz[31] == $userprefs[1]) || (!empty($serviz[176]) && $serviz[176] == $userprefs[1]))) {
echo '
<div class="d-table-row">
<div class="d-table-cell">';
echo '
<div class="bord m-auto w-95 text-center pgptxt form-check">';
$ptit = $fieldb1;
$fieldc1 = str_replace(array("\n", "\r"), '', $fieldc1);
$ptxt = $typ == TYP_THREAD ? $ptxt : $fieldc1;
if ($mod == 'maj') { //cas maj
echo '
<input type="hidden" name="mod" value="maj" />';
$text = '<strong>'.$web[369].' '.$web[7].' '.$web[334].'</strong>';
if ($ptit != "") {
$text .= '<div class="rep text-center">'.$ptit.'</div>';
}
}
elseif ($mod == "stop") {
echo "
<input type=\"hidden\" name=\"mod\" value=\"stop\" />";
$text = "<strong>".$web[390]."</strong>";
if ($ptit != "") {
$text .= '<div class="rep text-center">'.$ptit.'</div>';
}
}
elseif ($mod == 'raz') {
$text = '<strong>'.$web[7].' '.$web[334].'</strong><div class="rep text-center">'.$ptit.'</div>';
echo '
<input type="hidden" name="mod" value="raz" /><b>'.$web[621].'</b> '; // avoir
}
elseif ($mod == 'move') {
$dbfrom = SelectDBFieldsByField(ReadDBFields(DBFORUMCAT), 0, $cat);
$dbto = SelectDBFieldsByField(ReadDBFields(DBFORUMCAT), 0, $tocat);
$text = '<strong>'.$web[7].' '.$web[334].'</strong><div class="rep text-center">'.$ptit.'</div>';
$text .= '<b>'.$web[208].' '.$dbfrom[0][1].$web[634].$dbto[0][1].'</b>';
echo '
<input type="hidden" name="mod" value="move" /><b>'.$web[632].'</b> ';
}
else { //cas lock-up-top
$text = "<strong>".$web[7]." ".$web[334]."</strong><div class='rep text-center'>".$ptit."</div>";
if ($mod == "lock") {
echo '
<input type="hidden" name="mod" value="lock" /><b>'.$web[363].'</b> ';
}
else {
if ($forum[5] != "") {
echo '
<input type="radio" class="form-check-input" name="mod" value="up" checked="checked" /><b>'.$web[364].'</b> ';
}
if ($forum[6] != "" && $mod == "top") {
echo '
<input type="hidden" name="forum6" value="'.$forum[6].'" />
<input type="radio" class="form-check-input" name="mod" value="top" /><b>'.$web[365].'</b>';
}
}
}
echo $text;
echo '
<input type="hidden" name="pg" value="'.$pg.'" />';
echo '
</div>';
if ($mod == 'stop') {
echo '<div class="text-center"><strong>'.$userprefs[1].' , '.$web[391].'</strong></div>';
}
echo '
</div>
</div>';
}
else {
echo '
</div>
</div>
<p class="text-center">';
echo BeginJavascript().'
alert("'.addslashes($web[416]).'");
window.history.back();'.EndJavascript();
echo '
</p>';
die ('STOP !');
}
}
}
}
echo '
<div class="d-table-row">
<div class="d-table-cell">
';
if ($mod == '' || $mod == 'maj' || $mod == 'stop' || $mod == 'move' || $mod == 'raz') { // pas d'éditeur pour lock, up, top
echo '
<div class="table-responsive-md">
<div class="d-table w-100 text-center mx-auto">';
if ($typ != TYP_RECO) {
echo '
<div class="w-100 text-center mx-auto" style="max-width: 560px;">';
if (in_array($typ, array(TYP_FORUM, TYP_THREAD, TYP_BLOG, TYP_REBLOG, TYP_REACT, TYP_NEWS))) {
$cke_toolbar = !isAuthorImg($userprefs[1]) ? array('toolbarName'=>'Guppy_out') : array('toolbarName'=>'Guppy_out_img');
} else {
$cke_toolbar = array('toolbarName'=>'Guppy_out_min');
}
echo display_editor('ptxt', '100%', 300, $ptxt, $cke_toolbar);
echo '
</div>';
}
if (!empty($serviz[177]) && !OK_RGPD_date($userprefs[1])) echo '
<div class="d-table-row">
<div class="d-table-cell py-4">
<fieldset class="w-95 m-auto text-left"><legend>'.$web[14].'</legend>
<p><strong>'.$web[646].'</strong></p>
<p>'.$web[684].'</p>
<div class="form-check">
<label for="rgpd">'.$web[415].' : </label>
<input type="checkbox" class="form-check-input ml-2 mt-2" id="rgpd" name="rgpd"'.Checked($rgpd).' />
</div>
</fieldset>
</div>
</div>';
if ($serviz[100] != '0' && $cryptdisp == 'on' && ($serviz[98] == '' || $userprefs[1] == '')) {
$lbl = $serviz[100] == '3' ? $web[642] : '';
echo '
<div class="d-table-row">
<div class="d-table-cell text-center mt-4 mx-auto">'.dsp_crypt(0, 1, 3, 2, $lbl, $serviz[115] == 'on' ? $web[643] : '').'</div>
</div>
<div class="d-table-row">
<div class="d-table-cell text-center">
'.($serviz[100] == '3' ? '' : $web[530]).'
<input class="'.($err_crypt ? 'errorInputText' : 'texte').' inputcrypt m-auto form-control"
type="text" name="crypt" onpaste="return false;" />
</div>
</div>';
}
echo '
</div>
</div>';
}
echo '
</div>
</div>';
echo '
<div class="d-table-row">
<div class="d-table-cell text-center py-3">'.SubmitButton($web[52]).'</div>
</div>
</div>
</form>
</div>';
echo BeginJavascript().'
document.rapporter.pseudo.focus();'.EndJavascript();
} /// modif forum privé
}
else {
echo '
<p class="text-center"><strong>'.$ok.'</strong></p>';
if ($typ == TYP_NEWS) {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[8].'-5-'.$tconfig.$z2 : $site['NE'].'.php?lng='.$lng.'&tconfig='.$tconfig.$z2;
}
elseif ($typ == TYP_BLOG) {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[1].'-'.$tconfig.$z2 : $site['BLS'].'.php?lng='.$lng.'&tconfig='.$tconfig.$z2;
}
elseif ($typ == TYP_REBLOG) {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[1].'-40-'.$pg.'-'.$tconfig.$z2 : $site['BL'].'.php?lng='.$lng.'&pg='.$pg.'&tconfig='.$tconfig.$z2;
}
elseif ($typ == TYP_GUESTBK) {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[7].'-'.$tconfig.$z2 : $site['GB'].'.php?lng='.$lng.'&tconfig='.$tconfig.$z2;
}
elseif ($typ == TYP_FORUM) {
$cats = explode(',', $catforum);
$catforum = $cats[0];
if (!empty($catforum)) {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[5].'-20-'.$catforum.'-'.$tconfig.$z2 : $site['FR'].'.php?lng='.$lng.'&cat='.$catforum.'&tconfig='.$tconfig.$z2;
}
else {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[5].'-31'.'-'.$tconfig.$z2 : $site['FR'].'.php?lng='.$lng.'&tconfig='.$tconfig.$z2;
}
}
elseif ($typ == TYP_THREAD) {
$dbwork = array();
$dbwork = ReadDBFields(DBFORUM);
for ($i = 0; $i < count($dbwork); $i++) {
if ($dbwork[$i][1] == $num) {
$catforum = $dbwork[$i][12];
}
}
$cats = explode(',', $catforum);
$catforum = $cats[0];
if (!empty($catforum)) {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[5].'-20-'.$catforum.'-'.$tconfig.$z2 : $site['FR'].'.php?lng='.$lng.'&cat='.$catforum.'&tconfig='.$tconfig.$z2;
}
else {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[5].'-31'.'-'.$tconfig.$z2 : $site['FR'].'.php?lng='.$lng.'&tconfig='.$tconfig.$z2;
}
}
elseif ($typ == TYP_REACT) {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[20].'-102-'.$pg.'-'.$tconfig.$z2 : 'articles.php?lng='.$lng.'&pg='.$pg.'&tconfig='.$tconfig.$z2;
}
elseif ($typ == TYP_RECO || $typ == TYP_MAIL) {
$backurl = $site['URLR'] == 'on' ? $lng.'-'.$urlrw[0] : 'index.php?lng='.$lng;
}
echo BeginJavascript().'
var type = "'.$typ.'";
if (type == "'.TYP_RECO.'" || type == "'.TYP_MAIL.'") {
setTimeout("window.history.go(-2);", 2500);
}
else {
setTimeout(\'window.location="'.$backurl.'";\', 2500);
}'.EndJavascript();
}
}
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/renfilesantispam.inc'
<?php
/*******************************************************************************
* Admin Rename files
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2024 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
******************************************************************************/
if (stristr($_SERVER['SCRIPT_NAME'], 'renfilesantispam.inc')) {
header('location:../index.php');
die();
}
function rename_antispam_files() {
global $lng;
@define('CHEMIN', '../../');
include CONFIG;
$save = false;
$renfiles = array('PG' => 'postguest',
'BLS' => 'blogs',
'BL' => 'blog',
'FR' => 'forum',
'FRT' => 'fortopic',
'TH' => 'thread',
'GB' => 'guestbk',
'NE' => 'news',
'USR' => 'user',
'NWL' => 'newsletter',
'DN' => 'download',
'CT' => 'contact');
foreach ($renfiles as $key => $file) {
if (@$site[$key] != $file && !empty(@$site[$key]) && file_exists(CHEMIN.@$site[$key].'.php') && @file_exists(CHEMIN.$file.'.php')) {
$perms = substr(sprintf('%o', @fileperms(CHEMIN.$site[$key].'.php')), -4);
@SetChmod(CHEMIN.$site[$key].'.php');
if (@unlink(CHEMIN.$site[$key].'.php')) {
if (!rename(CHEMIN.$file.'.php', CHEMIN.$site[$key].'.php')) {
$site[$key] = $file;
$save = true;
@SetChmod(CHEMIN.$site[$key].'.php', $perms);
}
}
}
}
// re-activation de l'url-rw
if ($site['URLR'] == 'on') {
setURLrewriting('');
setURLrewriting('on');
}
}
?>
wget 'https://lists2.roe3.org/guppy/robots.txt'
User-agent: *
Disallow: /compte.php
Disallow: /connect.php
Disallow: /admin/
Disallow: /data/
Disallow: /file/
Disallow: /flash/
Disallow: /inc/
Allow: /inc/csshead/
Allow: /inc/jshead/
Allow: /inc/img/
Allow: /inc/lang/*.png$
Allow: /inc/*.css$
Allow: /inc/*.js$
Allow: /inc/calendar.php
Disallow: /install/
Disallow: /plugins/
Disallow: /save/
Disallow: */trackback
Disallow: /cgi-bin
wget 'https://lists2.roe3.org/guppy/rss.php'
<?php
/*******************************************************************************
* RSS Feeds
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
$topmess = $web[617];
$tconfig = import('tconfig', '', true, 0);
include 'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, 'RSS'.$tconfig, '100%');
else
htable($topmess, '100%');
if ($prt != -1 && $prt != 1) {
echo sprintf($web[618], stripslashes($site[($lang[0] == $lng ? 0 : 11)])).'
<div class="table-responsive-md">
<div class="bord d-table m-auto w-90">';
if ($serviz[60] == 'on') {
$rssurl = $site[3].sprintf(RSSART, $lng);
echo '
<div class="d-table-row mt-2">
<div class="d-table-cell align-middle w-50 text-right itemrss">'.$web[169].'</div>
<div class="d-table-cell align-middle w-50 text-left pl-3 itemrss">
<a href="'.CHEMIN.'newsrss.php?lng='.$lng.'&url=arts&tconfig='.$tconfig.$z2.'">
<i class="fas fa-rss"></i>
</a>
</div>
</div>';
}
if ($serviz[54] == 'on') {
$rssurl = $site[3].sprintf(RSSBLOG, $lng);
echo '
<div class="d-table-row mt-2">
<div class="d-table-cell align-middle w-50 text-right itemrss">'.getLabel($nom[$lng == $lang[0] ? 42 : 43]).'</div>
<div class="d-table-cell align-middle w-50 text-left pl-3 itemrss">
<a href="'.CHEMIN.'newsrss.php?lng='.$lng.'&url=blog&tconfig='.$tconfig.$z2.'">
<i class="fas fa-rss"></i>
</a>
</div>
</div>';
}
if ($serviz[16] == 'on') {
$rssurl = $site[3].sprintf(RSSNEWS, $lng);
echo '
<div class="d-table-row mt-2">
<div class="d-table-cell align-middle w-50 text-right itemrss">'.getLabel($nom[$lng == $lang[0] ? 7 : 17]).'</div>
<div class="d-table-cell align-middle w-50 text-left pl-3 itemrss">
<a href="'.CHEMIN.'newsrss.php?lng='.$lng.'&url=news&tconfig='.$tconfig.$z2.'">
<i class="fas fa-rss"></i>
</a>
</div>
</div>';
}
if ($serviz[103] == 'on') {
$rssurl = $site[3].sprintf(RSSALL, $lng);
echo '
<div class="d-table-row mt-2">
<div class="d-table-cell align-middle w-50 text-right itemrss">'.$web[619].'</div>
<div class="d-table-cell align-middle w-50 text-left pl-3 itemrss">
<a href="'.CHEMIN.'newsrss.php?lng='.$lng.'&url=all&tconfig='.$tconfig.$z2.'">
<i class="fas fa-rss"></i>
</a>
</div>
</div>';
}
echo '
</div>
</div>
<br />
<hr />';
}
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/rules.php'
<?php
/*******************************************************************************
* CHARTER reading Module
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/forum.inc';
$gyforum = new GY_forum();
$gyforum->frtyp = 'FRRU';
$result = $gyforum->FR_ok($userprefs[1], $lng);
$tconfig = $gyforum->tconfig;
$topmess = $gyforum->topmess;
if ($result[0] == 'FRRU') {
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
exit();
}
$result = $gyforum->FR_rules();
$topmess = $gyforum->topmess;
if (function_exists('htable1'))
htable1($topmess, $result[0], '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
?>
wget 'https://lists2.roe3.org/guppy/search.php'
<?php
/*******************************************************************************
* Search
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/search.inc';
$gysch = new GY_search();
$result = $gysch->SCH_ok($userprefs[1], $lng);
$tconfig = $gysch->tconfig;
$topmess = $gysch->topmess;
if ($result[0] == 'SCH') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gysch->SCH_content();
$topmess = $gysch->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/thread.php'
<?php
/*******************************************************************************
* Forum Thread
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.15 (November 29, 2023) : add managed variable in return function
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/forum.inc';
if ($serviz[13] == '') {
die('STOP ! Forum is not active !');
}
$widepage = $forum[3];
$gyforum = new GY_forum();
$gyforum->frtyp = 'TH';
$result = $gyforum->FR_ok($userprefs[1], $lng);
$tconfig = $gyforum->tconfig;
$topmess = $gyforum->topmess;
if ($result[0] == 'TH') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyforum->TH_content();
$topmess = $gyforum->topmess;
if ($userprefs[3] == '' || $userprefs[3] == BOX_LEFT.BOX_RIGHT) {
$left_empty = array_reduce($xposbox[$tconfig][BOX_LEFT], 'EstNonVide', true);
$userprefs3 = $left_empty ? BOX_RIGHT : BOX_LEFT;
}
if ($result[1] == 1) {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
if (isset($result[3]))
if (!empty($result[3])) echo '<p>'.$result[3].'</p>';
if (!empty($result[2])) echo BeginJavascript().'window.location="'.CHEMIN.$result[2].'";'.EndJavascript();
btable();
include 'inc/bpage.inc';
exit();
}
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%'); //
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/threadarch.php'
<?php
/*******************************************************************************
* Forum Thread Archive
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.15 (November 29, 2023) : Correction archive functionnality
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/funcarch.php';
include CHEMIN.'inc/forum.inc';
if ($serviz[13] == '') {
die('STOP ! Forum is not active !');
}
$widepage = $forum[3];
$gyforum = new GY_forum();
$gyforum->frtyp = 'THA';
$result = $gyforum->FR_ok($userprefs[1], $lng);
$tconfig = $gyforum->tconfig;
$topmess = $gyforum->topmess;
if ($result[0] == 'THA') {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyforum->THA_content();
$topmess = $gyforum->topmess;
if ($userprefs[3] == '' || $userprefs[3] == BOX_LEFT.BOX_RIGHT) {
$left_empty = array_reduce($xposbox[$tconfig][BOX_LEFT], 'EstNonVide', true);
$userprefs3 = $left_empty ? BOX_RIGHT : BOX_LEFT;
}
if ($result[1] == 1) {
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
if (!empty($result[3])) echo '<p>'.$result[3].'</p>';
if (!empty($result[2])) echo BeginJavascript().'window.location="'.CHEMIN.$result[2].'";'.EndJavascript();
btable();
include 'inc/bpage.inc';
exit();
}
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/tinymsg.php'
<?php
/*******************************************************************************
* Tinymsg
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.00 (December 15, 2020) : initial release
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/user.inc';
$gytmsg = new GY_user();
$result = $gytmsg->TMSG_content();
$tconfig = $gytmsg->tconfig;
$topmess = $gytmsg->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>
wget 'https://lists2.roe3.org/guppy/user.php'
<?php
/*******************************************************************************
* Confirm User preferencies
*******************************************************************************
* GuppY PHP Script - version 6.0
* CeCILL Copyright (C) 2004-2020 by Laurent Duveau
* Initiated by Laurent Duveau and Nicolas Alves
* Web site = https://www.freeguppy.org/
* e-mail = guppy@freeguppy.org
* V6 developed by Lud Bienaimé
* with the participation of the GuppY Team
*******************************************************************************
* Latest Changes :
* v6.00.04 (December 14, 2021) : add config path
******************************************************************************/
header('Pragma: no-cache');
define('CHEMIN', '');
include CHEMIN.'inc/includes.inc';
include CHEMIN.'inc/user.inc';
include CHEMIN.'data/config/config.inc';
$gyusr = new GY_user();
$result = $gyusr->USR_ok($userprefs[1], $lng);
$tconfig = $gyusr->tconfig;
if (!empty($result[0])) {
$topmess = $gyusr->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0].$tconfig, '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
exit();
}
$result = $gyusr->USR_content();
$topmess = $gyusr->topmess;
include CHEMIN.'inc/hpage.inc';
if (function_exists('htable1'))
htable1($topmess, $result[0], '100%');
else
htable($topmess, '100%');
echo $result[1];
btable();
include 'inc/bpage.inc';
?>