mirror of
https://github.com/pierre42100/comunic
synced 2025-07-12 13:02:59 +00:00
First commit
This commit is contained in:
1
inc/.htaccess
Executable file
1
inc/.htaccess
Executable file
@ -0,0 +1 @@
|
||||
Require all denied
|
40
inc/404.html
Executable file
40
inc/404.html
Executable file
@ -0,0 +1,40 @@
|
||||
<?php
|
||||
//Vérifications de dernières minute
|
||||
if(!isset($infosURL['uri_base']))
|
||||
$infosURL['uri_base'] = $urlsite;
|
||||
|
||||
if(!isset($infosURL['url_saisie']))
|
||||
$infosURL['url_saisie'] = $_SERVER['PHP_SELF'];
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Erreur 404 : page non trouvée - Comunic</title>
|
||||
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
|
||||
<style type='text/css'>
|
||||
body {margin:0px;padding:0px;background:#ffffff;font-family:arial, helvetica, sans-serif;}
|
||||
#top {margin:0px;padding:0px;background:#0066CC; color: #FFFFFF; width:100%; }
|
||||
#top .container { padding:0px 0px 0px 0px; height: 23px; }
|
||||
#top .container a {color: white; text-decoration: none; }
|
||||
.titre { text-align: center; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id='top'>
|
||||
<div class='container'>
|
||||
<strong><a href='<?php echo $infosURL['uri_base']; ?>'>Comunic</a></strong>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h1 class='titre'>Erreur : La page demandée n'a pas été trouvée</h1>
|
||||
<p>L'adresse saisie <i><?php echo $infosURL['url_saisie']; ?></i> n'a pas été trouvée.</p>
|
||||
<p>Causes les plus probables:</p>
|
||||
<ul>
|
||||
<li>La page a été déplacée</li>
|
||||
<li>La page a été supprimée</li>
|
||||
<li>Vous ne disposez pas des autorisations nécessaires pour ouvrir la page.</li>
|
||||
</ul>
|
||||
<p>Si vous avez écrit l'URL à la main, vérifiez votre saisie. Sinon, retournez à la page précédente et actualisez-la. Si le problème persiste, contactez-nous. Si vous le souhaitez, vous pouvez également <a href="<?php echo $infosURL['uri_base']; ?>">retourner à l'acceuil.</a></p>
|
||||
<p><span style="text-decoration: underline;"><strong>Que signifie "Erreur 404" ?</strong></span></p>
|
||||
<p>Dans le web, lorsqu'une page demandée n'a pas été trouvée sur un serveur, ce dernier renvoi une erreur de type 404. <em>404</em> est un <strong>état</strong>: l'état de la requête envoyée. Il existe d'autre état qui permette de définir si l'accès à une page est autorisé ou interdit, si tout s'est bien passé...</p>
|
||||
</body>
|
||||
</html>
|
19
inc/account_created.php
Executable file
19
inc/account_created.php
Executable file
@ -0,0 +1,19 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($account_created_check) OR !isset($mail))
|
||||
die('Invalid call!');
|
||||
?><div class="metro account_created">
|
||||
<h1 class="titre">Félicitations !</h1>
|
||||
<p>Vous pouvez dès à présent utiliser Comunic pour communiquer avec vos amis! Découvrez quelques-unes de ses fonctionalités :</p>
|
||||
<div class="img_account_created_contener"><?php echo code_inc_img(path_img_asset('discover_comunic_modifie.png'), "Fonctions de Comunic"); ?></div>
|
||||
|
||||
<h2>C'est parti !</h2>
|
||||
<p>Connectez-vous dès maintenant pour profiter de ses fonctionalités :</p>
|
||||
<form action="connecter.php<?php if(isset($redirect)) echo "?redirect=".urlencode($redirect); ?>" method="post" class="form_first_login">
|
||||
<div class="input-control password size4">
|
||||
<input type="password" value="" name="motdepasse" placeholder="Saisissez votre mot de passe"/>
|
||||
</div>
|
||||
<input type="hidden" name="mail" value="<?php echo $mail; ?>" />
|
||||
<button onClick="this.submit();">Connexion</button>
|
||||
</form>
|
||||
</div>
|
18
inc/add_comunic_as_search_engine.php
Executable file
18
inc/add_comunic_as_search_engine.php
Executable file
@ -0,0 +1,18 @@
|
||||
<?php
|
||||
//Vérification de la clé de sécurité
|
||||
if(!isset($add_comunic_as_search_engine_check))
|
||||
die('Invalid call!');
|
||||
|
||||
//Envoi de l'header XML
|
||||
header('Content-Type: application/xml');
|
||||
echo "<"; ?>?xml version="1.0" encoding="UTF-8" ?>
|
||||
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/">
|
||||
<ShortName>Comunic</ShortName>
|
||||
<Description>Un réseau social qui respecte votre vie privée.</Description>
|
||||
<InputEncoding>ISO-8859-1</InputEncoding>
|
||||
<OutputEncoding>ISO-8859-1</OutputEncoding>
|
||||
<Image width="16" height="16" type="image/x-icon"><?php echo $urlsite; ?>img/favicon.ico</Image>
|
||||
<Image width="64" height="64" type="image/x-icon"><?php echo $urlsite; ?>img/favicon_64.ico</Image>
|
||||
<Url type="text/html" method="get" template="<?php echo $urlsite; ?>recherche.php?q={searchTerms}"></Url>
|
||||
<Language>fr_FR</Language>
|
||||
</OpenSearchDescription>
|
34
inc/ajax_search_users.php
Executable file
34
inc/ajax_search_users.php
Executable file
@ -0,0 +1,34 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($ajax_search_users))
|
||||
die('Invalid Request!');
|
||||
if(!isset($_SESSION['ID']))
|
||||
die('Login required!');
|
||||
|
||||
//Vérification de la présence des variables
|
||||
if(!isset($_GET['search']))
|
||||
die('Missing arguments');
|
||||
|
||||
if($_GET['search'] == "")
|
||||
die('Invalid arguments !');
|
||||
|
||||
//On envoi l'en-tête
|
||||
header("Content-type: text/plain");
|
||||
|
||||
//On effectue la recherche
|
||||
$search = searchuser(corrige_accent_javascript($_GET['search']), $bdd, 5);
|
||||
|
||||
//On définit les variables
|
||||
$separateur_user = "<|>";
|
||||
$separateur_info = "*!*";
|
||||
|
||||
//On renvoi les résultats
|
||||
foreach($search as $i=>$renvoi)
|
||||
{
|
||||
//Si la requête n'est pas la première, on met un séparateur
|
||||
if($i != 0)
|
||||
echo $separateur_user;
|
||||
|
||||
//On affiche les informations sur la personne (avec les séparateurs
|
||||
echo corrige_caracteres_speciaux($renvoi['ID'].$separateur_info.$renvoi['prenom']." ".$renvoi['nom'].$separateur_info.avatar($renvoi['ID'], './', 32, 32));
|
||||
}
|
21
inc/api/apiServer.inc.php
Normal file
21
inc/api/apiServer.inc.php
Normal file
@ -0,0 +1,21 @@
|
||||
<?php
|
||||
/**
|
||||
* API Server
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
//Security
|
||||
isset($_SESSION) OR exit("Invalid call ! - ".$_SERVER['PHP_SELF']);
|
||||
|
||||
$serviceName = "testService";
|
||||
$token = "G5AoxG/URyYBDVyLYnsnVpQL0p+JTL7QgOopwQIDAQABAoIBAC7kB2BUVDEm3Dy4";
|
||||
|
||||
exit();
|
||||
//Server framework inclusion
|
||||
require_once(relativePath_3rdparty("RestServer/RestServer.php"));
|
||||
|
||||
//Creating server
|
||||
$serverState = ($mode_site == "offline" ? "debug" : "production");
|
||||
$server = new \Jacwright\RestServer\RestServer($serverState);
|
||||
$server->handle();
|
79
inc/change_avatar_webcam.php
Executable file
79
inc/change_avatar_webcam.php
Executable file
@ -0,0 +1,79 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($change_avatar_webcam))
|
||||
die("Invalid Request!");
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required !");
|
||||
|
||||
//On vérifie si un avatar a été envoyé
|
||||
if(isset($_POST['data']))
|
||||
{
|
||||
if($_POST['data'] != "")
|
||||
{
|
||||
//On supprime l'ancien avatar si il y en a un
|
||||
if(file_exists(relativeUserDataFolder('avatars/adresse_avatars/'.$_SESSION['ID'].'.txt')))
|
||||
{
|
||||
unlink(relativeUserDataFolder('avatars/'.file_get_contents(relativeUserDataFolder('avatars/adresse_avatars/'.$_SESSION['ID'].'.txt'))));
|
||||
}
|
||||
|
||||
//Nom du nouvel avatar
|
||||
$adresse = sha1(time()).".png";
|
||||
|
||||
//On modifie la date d'enregistrement de l'avatar
|
||||
file_put_contents(relativeUserDataFolder('avatars/adresse_avatars/'.$_SESSION['ID'].'.txt'), $adresse);
|
||||
|
||||
//Enregistrement de l'avatar
|
||||
base64_to_jpeg($_POST['data'], relativeUserDataFolder("avatars/".$adresse));
|
||||
|
||||
//Redirection vers la page de modification de l'avatar
|
||||
//header('Location: parametres.php?c=avatar');
|
||||
}
|
||||
}
|
||||
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
<title>Utilisation de la WebCam pour changer d'avatar</title>
|
||||
</head>
|
||||
<body>
|
||||
<?php include(pagesRelativePath('common/pageTop.php')); ?>
|
||||
<div class="corps_page_nouvel_avatar">
|
||||
<h2 class="titre">Utilisation de la WebCam pour envoyer un nouvel avatar</h2>
|
||||
<a href="parametres.php?c=avatar"> Retour aux paramètres </a>
|
||||
<div id="container">
|
||||
|
||||
<!-- Bouton d'activation de la webcam -->
|
||||
<div class="bouton_photo_webcam"><button onClick="navigator.getUserMedia(constraints, successCallback, errorCallback);">Activer la WebCam</button></div>
|
||||
|
||||
<!-- Zone d'apparition de la webcam -->
|
||||
<video autoplay poster="<?php echo path_img_asset(''); ?>activer_webcam.png"></video>
|
||||
|
||||
<!-- Bouton de prise de photo -->
|
||||
<div class="bouton_photo_webcam"><button id="bouton_prendre_photo">Prendre une photo</button></div>
|
||||
|
||||
<!-- Zone d'apparition de la photo -->
|
||||
<canvas class="target_image_webcam_nouvel_avatar" id="target_image_webcam_nouvel_avatar"></canvas>
|
||||
|
||||
<!-- Bouton d'enregistrement de la photo -->
|
||||
<div class="bouton_envoi_nouvel_avatar_from_webcam"><button onClick="send_snapshot_webcam_for_avatar();">Envoyer la photo</button></div>
|
||||
|
||||
<!-- Formulaire d'envoi des données -->
|
||||
<form action="action.php?actionid=<?php echo $action; ?>" method="post" id="post_new_image_from_webcam"><input type="hidden" name="data" id="data" /></form>
|
||||
|
||||
</div>
|
||||
|
||||
<!-- Conseils pour les utilisateurs -->
|
||||
<b> Note : Il se peut que si vous utilisez une ancienne version de votre navigateur ou que vous utilisez Internet Explorer cette page ne fonctionne pas.</b>
|
||||
<p> Information : Il se peut que votre navigateur vous demande l'autorisation d'utiliser la webcam. Dans ce cas, acceptez-la. :</p>
|
||||
<?php echo code_inc_img(path_img_asset('accepte_webcam.jpg'), "Dans Firefox, cliquez sur Partager le périphérique selectionné pour accepter l'affichage de la webcam.", "", "", "margin:auto;"); ?>
|
||||
<!-- Fin de: Conseils pour les utilisateurs -->
|
||||
</div>
|
||||
<!-- Pied de page -->
|
||||
<hr /><?php include(pagesRelativePath('common/pageBottom.php')); ?>
|
||||
|
||||
<!-- Inclusion des scripts Javascript spécifiques -->
|
||||
<?php echo code_inc_js(path_js_asset('webrtc_main.js')); ?>
|
||||
<!-- Fin de: Inclusion des scripts Javascript spécifiques -->
|
||||
</body>
|
||||
</html>
|
22
inc/change_hauteur_chat.php
Executable file
22
inc/change_hauteur_chat.php
Executable file
@ -0,0 +1,22 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Invalid Request.");
|
||||
if(!isset($verification_change_auteur_chat))
|
||||
die("404 File not found.");
|
||||
|
||||
//Vérification de l'existence des variables
|
||||
if(!isset($_GET['size']))
|
||||
die("Missing arguments.");
|
||||
|
||||
//Préparation de la mise à jour
|
||||
$size = ($_GET['size'] > 20 ? $_GET['size'] : 150);
|
||||
$size = ($size <= 220 ? $size : 150);
|
||||
|
||||
//On met à jour l'état de l'affichage du chat privé
|
||||
$sql = "UPDATE utilisateurs SET height_private_chat = ? WHERE ID = ?";
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($size, $_SESSION['ID']));
|
||||
|
||||
//Message de succès
|
||||
echo "OK. ".$size;
|
39
inc/change_niveau_visibilite_post.php
Executable file
39
inc/change_niveau_visibilite_post.php
Executable file
@ -0,0 +1,39 @@
|
||||
<?php
|
||||
//Service Pierre
|
||||
// 2015 - Tous droits réservés
|
||||
|
||||
//Fichier permettant de changer le niveau de visibilité d'un post
|
||||
|
||||
//Sécurité
|
||||
if(!isset($verification_visibilite))
|
||||
die(); //Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die(); //Sécurité
|
||||
|
||||
//Vérification de l'existence des variables requises
|
||||
if(isset($_GET['nouveau_niveau_visibilite']) && isset($_GET['idtexte']))
|
||||
{
|
||||
//Définition des variables
|
||||
$nouveau_niveau_visibilite = $_GET['nouveau_niveau_visibilite'];
|
||||
$idtexte = $_GET['idtexte'];
|
||||
|
||||
if($nouveau_niveau_visibilite*1 != 0 AND $idtexte*1 != 0)
|
||||
{
|
||||
//Vérification du niveau de visibilite
|
||||
if($nouveau_niveau_visibilite > 0 AND $nouveau_niveau_visibilite < 4)
|
||||
{
|
||||
//Mise à jour de la video
|
||||
$sql = "UPDATE texte SET niveau_visibilite = ? WHERE (ID_personne = ? AND ID_amis = 0 AND ID = ?) OR (ID_amis = ? AND ID = ?)";
|
||||
|
||||
//Exécution de la requête
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($nouveau_niveau_visibilite*1, $_SESSION['ID'], $idtexte, $_SESSION['ID'], $idtexte));
|
||||
|
||||
echo "OK. Fini.";
|
||||
}
|
||||
else
|
||||
{
|
||||
die("Niveau de visibilite incorrect.<br />");
|
||||
}
|
||||
}
|
||||
}
|
32
inc/code_session_private_chat.php
Executable file
32
inc/code_session_private_chat.php
Executable file
@ -0,0 +1,32 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required.");
|
||||
if(!isset($code_session_private_chat))
|
||||
die("404 File not found.");
|
||||
|
||||
//On récuère la la liste si elle est disponible
|
||||
if(isset($_SESSION['private_chat']))
|
||||
{
|
||||
if(isset($_SESSION['private_chat'][$_SESSION['ID']]))
|
||||
{
|
||||
//On affiche toute les conversations de manière méthodique
|
||||
foreach($_SESSION['private_chat'][$_SESSION['ID']] as $id=>$nothing)
|
||||
{
|
||||
//Récupération des informations de la personne
|
||||
$info_personne = cherchenomprenom($id, $bdd);
|
||||
|
||||
echo "<div class='une_conversation_private_chat window'>";
|
||||
echo "<div class='header_une_conversation_private_chat caption'>";
|
||||
echo '<span class="icon icon-comments-2"></span>';
|
||||
echo "<div class='title'>".corrige_caracteres_speciaux($info_personne['prenom']." ".$info_personne['nom'])."</div>";
|
||||
echo " <button class='btn-close' onClick='close_conversation(".$id.");'></button>";
|
||||
echo "</div>";
|
||||
echo "<div class='content'>";
|
||||
echo "<iframe src='".$urlsite."privatechat.php?notitle=1&screen=chat&id=".$id."' class='iframe_une_conversation_private_chat'></iframe>";
|
||||
echo "</div>";
|
||||
echo "</div>";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
87
inc/config/config.php
Executable file
87
inc/config/config.php
Executable file
@ -0,0 +1,87 @@
|
||||
<?php
|
||||
//Fonctions du service Pierre
|
||||
//D<>velopp<70> pour Comunic
|
||||
//D<>but du d<>veloppement : fin 2013
|
||||
//Tous droits r<>serv<72>s.
|
||||
|
||||
//Avertissement : ce fichier g<>n<EFBFBD>r<EFBFBD> automatiquement est n<>cessaire au bon fonctionnement de la base de donn<6E>es et des fonctions.
|
||||
|
||||
//Configuration d'acc<63>s <20> la base de donn<6E>es
|
||||
$hotedb = "localhost"; //H<>te de la base de donn<6E>es
|
||||
$nomdb = "comunic"; //Nom de la base de donn<6E>es
|
||||
$userdb = "root"; //Nom utilisateur
|
||||
$passworddb = "root"; //Mot de passe pour acc<63>der acc<63>s <20> la base de donn<6E>es
|
||||
|
||||
//Configuration du site
|
||||
$urlsite = "http://devweb.local/comunic/current/"; //Url du site
|
||||
$forceHttps = false; //Forcer ou non la connexion securisee (en HTTPS) du site
|
||||
$preferenceredirection = "headerphp"; //Pr<50>f<EFBFBD>rence de redirection : HTML ou PHP
|
||||
$mode_site = "offline"; //Mode du site : en ligne ou offline
|
||||
$last_update_website = "1476950918"; //Nombre de secondes depuis la derni<6E>re mise <20> jour du site
|
||||
$alert_last_update_website = "1"; //P<>riode suivant la mise <20> jour duant laquelle un avertissement sera affich<63>
|
||||
$jqueryonline = ""; //Adresse de jQuery en ligne
|
||||
$affichebeta = 0; //On affiche ou nom le message d'avertissement sur la page principale
|
||||
$textebeta = array("fr" => ""); //Texte qui est affich<63> si le message de beta est affich<63> sur index.php (fran<61>ais)
|
||||
$textebeta["en"]=""; //Texte qui est affich<63> si le message de beta est affich<63> sur index.php (anglais)
|
||||
$textecookie["fr"]="Attention : Certaines fonctionnalités comme le niveau de visibilité des posts personnalisé ne sont pas encore entièrement disponibles."; //Texte qui est affich<63> en page d'acceuil qui avertis pour la cr<63>ation de cookies (fran<61>ais)
|
||||
$textecookie["en"]="Warning : There is some undone functionalities in this website such as the visibility of the posts"; //Texte qui est affich<63> en page d'acceuil qui avertis pour la cr<63>ation de cookies (anglais)
|
||||
$affichemessageclassique = 0; //Afficher ou non le message d'avertissement classique
|
||||
$bloque_site_for_update = 0; //Bloquer ou non le site pour effectuer une mise <20> jour
|
||||
$complementsource = ""; //Compl<70>ment de source pour le fichier header.php
|
||||
$activer_publique_chat = "non"; //Activer ou non le chat publique
|
||||
$activer_cache = "non"; //Activer ou non la mise en cache et la r<>duction des ressources
|
||||
$bloque_clic_droit = "non"; //Intercepter ou non le chat clic droit de la souris
|
||||
$active_services = "oui"; //Activer ou non les services: 'oui' ou 'non'
|
||||
$active_gestion_404 = "oui"; //Activer ou non la gestion des erreurs 404 par le fichier index.php: 'oui' ou 'non'
|
||||
$active_gestion_appareil_mobile = "non"; //Activer ou non la gestion des des appareils mobiles par le fichier index.php: 'oui' ou 'non'
|
||||
$ID_official_page = "198"; //ID de la page officielle
|
||||
$ID_actuality_page = "198"; //ID de la page d'actualite
|
||||
$comment_size_limit = "2555"; //Taille maximum des commentaires, en nombre de caract<63>res
|
||||
|
||||
//Protection de la cr<63>ation de compte
|
||||
$activcreationcompte = "nopass"; //Permet d'activer, de d<>sactiver ou de prot<6F>ger par mot de passe la cr<63>ation de compte
|
||||
$passwordcreataccount = 'daOkAtJI0O5Cg'; //Mot de passe de protection de compte si demand<6E>. Est stock<63> crypt<70> pour plus de s<>curit<69>.
|
||||
$messagecreateaccountdenied = ""; //Message a afficher en cas de refus de cr<63>ation de compte
|
||||
$activimagevalidation = "1"; //Affiche ou non l'image de validation de cr<63>ation de compte. (image de s<>curit<69>)
|
||||
|
||||
//Configuration de Piwik
|
||||
$enable_piwik = "0"; //Activer ou non le suivi Piwik
|
||||
$id_site_piwik = "1"; //ID du site dans l'interface de Piwik
|
||||
$adresse_piwik = "//communiquons.org/piwik"; //Adresse du site Piwik (doit <20>tre compl<70>te et commencer par // (pas de http: ou https:))
|
||||
|
||||
//Facebook API
|
||||
$active_facebook_api = "non"; //Activer ou non les APIS FACEBOOK pour la cr<63>ation de compte
|
||||
$id_app_facebook = ""; //ID de l'appplication Facebook
|
||||
$facebook_api_key = ""; //Cl<43> des API Facebook
|
||||
|
||||
//Envoi de mails
|
||||
$active_envoi_mail = "oui"; //Activation de l'envoi de mails
|
||||
$methode_envoi_mail = "mail()"; //M<>thode d'envoi de mail (PHPMailer ou mail())
|
||||
$active_login_envoi_mail = "oui"; //Activation de l'authentification pour l'envoi de mail
|
||||
$mail_envoi = "pierre@mail.local"; //Adresse mail de l'exp<78>diteur
|
||||
$admin_mail_envoi = "pierre@mail.local"; //Adresse mail de l'administration
|
||||
$mail_envoi_erreur_sql = "pierre@mail.local"; //Adresse mail de l'envoi de bug relatif aux requ<71>tes SQL
|
||||
$password_mail_envoi = "1478965"; //Mot de passe de l'exp<78>diteur
|
||||
$adresse_serveur_mail_envoi = "localhost"; //Adresse du serveur mail d'envoi
|
||||
$port_serveur_mail_envoi = "25"; //Port du serveur mail d'envoi
|
||||
$nom_mail_expediteur = "Comunic (communiquons.org)"; //Nom pour les envoi de mail
|
||||
$info_mail_securite = "Ce mail est un mail relatif à la sécirté de votre compte, c'est pourquoi il vous est adressé même si vous avez refusé l'envoi de mails."; //Message <20> afficher dans tous les mails relatifs <20> la s<>curit<69> du compte
|
||||
|
||||
//Forcer le changement d'adresses mail (redirection)
|
||||
$force_redirection_mails = "oui"; //Activation ou non de la redirection
|
||||
$adresse_mail_redirection = "pierre@mail.local"; //Adresse mail de redirection
|
||||
|
||||
//Administration
|
||||
$plus_securite_admin = "oui"; //Renforcer la s<>curit<69> <20> la connexion de l'administration
|
||||
$enable_log_admin = "oui"; //Activer la surveillance de l'activit<69> de l'administration
|
||||
|
||||
//Support du SSL
|
||||
if(isset($_SERVER['HTTPS']))
|
||||
{
|
||||
if($_SERVER['HTTPS'] == "on")
|
||||
//Modification de http:// en https:// dans l'URL du site
|
||||
$urlsite = str_replace('http://', 'https://', $urlsite);
|
||||
}
|
||||
elseif($forceHttps)
|
||||
header("location: https://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]);
|
||||
?>
|
14
inc/config/listAllowedHosts.inc.php
Normal file
14
inc/config/listAllowedHosts.inc.php
Normal file
@ -0,0 +1,14 @@
|
||||
<?php
|
||||
/**
|
||||
* List of allowed hosts
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
$liste_allowed_hosts = array(
|
||||
"communiquons.org",
|
||||
"192.168.1.5",
|
||||
"devweb.local"
|
||||
|
||||
//Add here your URL for your personnal installation
|
||||
);
|
74
inc/config/listPages.php
Normal file
74
inc/config/listPages.php
Normal file
@ -0,0 +1,74 @@
|
||||
<?php
|
||||
/**
|
||||
* Virtual pages list
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit("Invalid call - ".$_SERVER['PHP_SELF']);
|
||||
|
||||
$pagesList = array();
|
||||
|
||||
/**
|
||||
* Edit a post
|
||||
*/
|
||||
$pagesList['editpost.php'] = array(
|
||||
"file" => "homeUser/editPost/editPost.inc.php",
|
||||
);
|
||||
|
||||
/**
|
||||
* Search a user
|
||||
*/
|
||||
$pagesList['recherche.php'] = array(
|
||||
"file" => "searchUser/searchUser.inc.php",
|
||||
);
|
||||
|
||||
/**
|
||||
* List opened pages
|
||||
*/
|
||||
$pagesList['pagepublique.php'] = array(
|
||||
"file" => "openUsers/openUsers.inc.php",
|
||||
);
|
||||
|
||||
/**
|
||||
* About the project
|
||||
*/
|
||||
$pagesList['about.php'] = array(
|
||||
"file" => "about/about.php",
|
||||
);
|
||||
|
||||
/**
|
||||
* About Comunic
|
||||
*/
|
||||
$pagesList['whatiscomunic.php'] = array(
|
||||
"file" => "whatIsComunic/whatiscomunic.inc.php",
|
||||
);
|
||||
|
||||
/**
|
||||
* Contact administration
|
||||
*/
|
||||
$pagesList['contact.php'] = array(
|
||||
"file" => "contact/contact.inc.php",
|
||||
);
|
||||
|
||||
/**
|
||||
* Improvement forum
|
||||
*/
|
||||
$pagesList['forum.php'] = array(
|
||||
"file" => "improveForum/forum.inc.php",
|
||||
);
|
||||
|
||||
|
||||
/**
|
||||
* Share a link
|
||||
*/
|
||||
$pagesList['share.php'] = array(
|
||||
"file" => "share/share.inc.php",
|
||||
);
|
||||
|
||||
/**
|
||||
* Webmail
|
||||
*/
|
||||
$pagesList['webmail.php'] = array(
|
||||
"file" => "webmail/webmail.inc.php",
|
||||
);
|
30
inc/config/staticConfig.php
Normal file
30
inc/config/staticConfig.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
/**
|
||||
* Static configuration of website
|
||||
* contains every elements which may not require to be changed
|
||||
* when Comunic is installed on a new webserver
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
$staticConfig = array();
|
||||
|
||||
/**
|
||||
* Path to 3rd party elements
|
||||
*/
|
||||
$staticConfig["3rdPartyElementsFolder"] = "3rdparty/";
|
||||
|
||||
/**
|
||||
* Path to user data
|
||||
*/
|
||||
$staticConfig["userDataFolder"] = "user_data/";
|
||||
|
||||
/**
|
||||
* Path the core elements of website
|
||||
*/
|
||||
$staticConfig['coreFolder'] = "inc/core/";
|
||||
|
||||
/**
|
||||
* List of function files
|
||||
*/
|
||||
$staticConfig['listFunctionsFiles'] = array("sql", "main", "url", "api");
|
88
inc/conversations_private_chat.php
Executable file
88
inc/conversations_private_chat.php
Executable file
@ -0,0 +1,88 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required.");
|
||||
if(!isset($ok_for_recent_private_chat))
|
||||
die("404 File not found.");
|
||||
|
||||
//Recherche des 5 dernières conversations dans la base de données
|
||||
$array_last_conversations = array();
|
||||
$supp_sql = "ID_destination != 0 ";
|
||||
for($i = 0; $i < 5; $i++)
|
||||
{
|
||||
//Sélection SQL
|
||||
$result_sql = select_sql("chatprive", "(ID_personne = ? OR ID_destination = ?) AND (".$supp_sql.") ORDER BY date_envoi DESC LIMIT 1", $bdd, $tableau_valeurs = array($_SESSION['ID'], $_SESSION['ID']));
|
||||
|
||||
//On vérifie si il reste des entrées
|
||||
if(count($result_sql) == 0)
|
||||
break;
|
||||
|
||||
//Détermination de l'ID de la personne distante
|
||||
$temp_id_personne = ($result_sql[0]['ID_personne'] == $_SESSION['ID'] ? $result_sql[0]['ID_destination'] : $result_sql[0]['ID_personne']);
|
||||
|
||||
//Enregistrement des informations
|
||||
$array_last_conversations[$temp_id_personne] = array(
|
||||
'ID_personne' => $temp_id_personne,
|
||||
'message' => $result_sql[0]['contenu'],
|
||||
'vu' => ($result_sql[0]['ID_personne'] == $_SESSION['ID'] ? 1 : $result_sql[0]['vu']),
|
||||
'date' => $result_sql[0]['date_envoi']
|
||||
);
|
||||
|
||||
//Rajout de la condition SQL
|
||||
$supp_sql .= "AND ID_destination != ".$temp_id_personne." AND ID_personne != ".$temp_id_personne." ";
|
||||
}
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Conversations récentes du chat privé</title>
|
||||
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
|
||||
|
||||
<!-- Appel des feuilles de style -->
|
||||
<?php echo code_inc_css(path_css_asset('global.php/'.$last_update_website)); ?>
|
||||
|
||||
<style type="text/css">
|
||||
.conversations_contener {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.a_conversation {
|
||||
padding-top: 15px;
|
||||
}
|
||||
|
||||
.open_conversation {
|
||||
width: 98% !important;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.a_conversation small {
|
||||
font-size: 70% !important;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body class="metro">
|
||||
|
||||
<!-- Affichage de la liste des conversations -->
|
||||
<?php
|
||||
if(count($array_last_conversations) == 0)
|
||||
echo "<p>Vous n'avez aucune conversation récente à afficher</p>";
|
||||
else
|
||||
{
|
||||
echo "<div class='conversations_contener'>";
|
||||
|
||||
foreach($array_last_conversations as $afficher)
|
||||
{
|
||||
|
||||
?><div class="a_conversation">
|
||||
<a class="open_conversation command-button" href="<?php echo $urlsite; ?>action.php?actionid=19&id=<?php echo $afficher['ID_personne']; ?>&autoredirect">
|
||||
<i class="icon-<?php echo($afficher['vu'] == 1 ? "comments-2" : "new"); ?> on-left"></i>
|
||||
<?php echo corrige_caracteres_speciaux(return_nom_prenom_user($afficher['ID_personne'], $bdd)); ?>
|
||||
<small><?php echo corrige_caracteres_speciaux(affiche_smile(bloquebalise(wordwrap(str_replace(')', ') ', $afficher['message']), 30, " ", true)), $urlsite)); ?><br /><i><?php echo adapte_date($afficher['date']); ?></i></small>
|
||||
</a>
|
||||
</div><?php
|
||||
}
|
||||
|
||||
echo "</div>";
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
16
inc/core/system/blockedForUpdate.inc.php
Normal file
16
inc/core/system/blockedForUpdate.inc.php
Normal file
@ -0,0 +1,16 @@
|
||||
<?php
|
||||
/**
|
||||
* This file is used to check whether the website
|
||||
* was shutdown for upgrade or not
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit("Invalid call - ".$_SERVER['PHP_SELF']);
|
||||
|
||||
//On vérifie si le site est bloqué pour une mise à jour ou non
|
||||
if($bloque_site_for_update == 1)
|
||||
{
|
||||
echo add_url_site(file_get_contents(websiteRelativePath().'inc/message_update.html'), $urlsite);
|
||||
die();
|
||||
}
|
24
inc/core/system/checkAllowedHost.inc.php
Normal file
24
inc/core/system/checkAllowedHost.inc.php
Normal file
@ -0,0 +1,24 @@
|
||||
<?php
|
||||
/**
|
||||
* This file is useful to check we are
|
||||
* on an allowed host for Comunic
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit("Invalid call - ".$_SERVER['PHP_SELF']);
|
||||
|
||||
/**
|
||||
* Getting list of allowed host
|
||||
*/
|
||||
include(websiteRelativePath("inc/config/listAllowedHosts.inc.php"));
|
||||
|
||||
/**
|
||||
* Performing security check
|
||||
*/
|
||||
if(!in_array($_SERVER['HTTP_HOST'], $liste_allowed_hosts))
|
||||
{
|
||||
//On redirige vers l'URL du site
|
||||
header('location: '.$urlsite);
|
||||
}
|
||||
|
60
inc/delete_avatar_img_background.php
Executable file
60
inc/delete_avatar_img_background.php
Executable file
@ -0,0 +1,60 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required !");
|
||||
if(!isset($delete_avatar_img_background))
|
||||
die("Invalid request!");
|
||||
if(!isset($_SERVER['HTTP_REFERER']))
|
||||
die("Invalid call!");
|
||||
|
||||
//Vérification de l'existence des variables
|
||||
if(!isset($_GET['type']))
|
||||
die("Invalid arguments !");
|
||||
|
||||
//Vérifions que l'appel du fichier vient bien de parametres.php
|
||||
if(!preg_match("/parametres.php/", $_SERVER['HTTP_REFERER']))
|
||||
die("This request has been stopped for security reasons.");
|
||||
|
||||
if($_GET['type'] == "avatar")
|
||||
{
|
||||
//Suppresion de l'avatar
|
||||
$type = "avatars";
|
||||
}
|
||||
elseif($_GET['type'] == "imgfond")
|
||||
{
|
||||
//Suppresion de l'avatar
|
||||
$type = "imgfond";
|
||||
}
|
||||
else
|
||||
die("Incorrect arguments!");
|
||||
|
||||
//On définit l'adresse du fichier d'indication
|
||||
$adresse_fichier_indication = relativeUserDataFolder($type.'/adresse_'.$type.'/'.$_SESSION['ID'].'.txt');
|
||||
|
||||
//On commence par vérifier si une image de fond a été postée
|
||||
if(file_exists($adresse_fichier_indication))
|
||||
{
|
||||
//On a le fichier texte d'indication d'adresse
|
||||
//On vérifie tout de même si le fichier existe
|
||||
//Récupération de l'adresse indiquée par le fichier
|
||||
$adresse = file_get_contents($adresse_fichier_indication);
|
||||
|
||||
//On vérifie si le fichier existe
|
||||
if(file_exists(relativeUserDataFolder($type."/".$adresse)))
|
||||
{
|
||||
//Le fichier existe ->
|
||||
//On supprime le fichier
|
||||
unlink(relativeUserDataFolder($type."/".$adresse));
|
||||
}
|
||||
|
||||
//On supprime maintenant le fichier texte d'indication
|
||||
unlink($adresse_fichier_indication);
|
||||
}
|
||||
else
|
||||
echo "L'avatar n'existe pas...";
|
||||
|
||||
//On redirige vers la page précédente
|
||||
header('Location: '.$_SERVER['HTTP_REFERER']);
|
||||
|
||||
//On quitte le script (sécurité)
|
||||
die();
|
58
inc/delete_old_notifications.php
Executable file
58
inc/delete_old_notifications.php
Executable file
@ -0,0 +1,58 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($delete_old_notifications))
|
||||
die("Invalid request.");
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required.");
|
||||
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Suppression des anciennes notifications</title>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
</head>
|
||||
<body class="metro">
|
||||
<?php
|
||||
//On vérifie si une demande a été postée
|
||||
$ok = false;
|
||||
if(isset($_POST['choix']))
|
||||
{
|
||||
$choix = $_POST['choix'];
|
||||
if($choix != "")
|
||||
$ok = true; //On valide le choix
|
||||
}
|
||||
|
||||
if(!$ok)
|
||||
{
|
||||
?><form action="action.php?actionid=<?php echo $action; ?>" method="post">
|
||||
<div class="input-control text" id="datepicker">
|
||||
<input type="text" name="choix" placeholder="Cliquez ici" />
|
||||
</div>
|
||||
<p>Cliquez ci-dessus pour choisir la date avant laquelle les notifications créées seront supprimées</p>
|
||||
<p style="text-align: center"><input type="submit" value="Supprimer" /></p>
|
||||
|
||||
<script>
|
||||
$("#datepicker").datepicker();
|
||||
</script>
|
||||
</form><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
//Détermination de la date
|
||||
$date = normalise_datepicker($choix);
|
||||
|
||||
//On supprime les entrées antérieures à cette date
|
||||
$sql = "DELETE FROM notification WHERE date_envoi <= ? AND ID_personne = ?";
|
||||
|
||||
//Exécution de la requête
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($date, $_SESSION['ID']));
|
||||
|
||||
//Message de succès
|
||||
?><p class="bg-lighterBlue padding20 fg-white">
|
||||
Les notifications antérieures à cette date ont été supprimées.
|
||||
</p><?php
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
23
inc/delete_request_become_friend.php
Executable file
23
inc/delete_request_become_friend.php
Executable file
@ -0,0 +1,23 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($delete_request_become_friend))
|
||||
die("Invalid request!");
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login Required!");
|
||||
|
||||
//Vérification de l'existence des variables
|
||||
if(!isset($_GET['id']))
|
||||
die("Missing arguments!");
|
||||
|
||||
//On vérifie le contenu des variables
|
||||
$id = $_GET['id']*1;
|
||||
if($id == 0)
|
||||
die("Invalid ID !");
|
||||
|
||||
//On supprime maintenant la demande, qu'elle n'existe ou pas (avec sécurité)
|
||||
$sql = "DELETE FROM amis WHERE ID_personne = ? AND actif = 0 AND ID_amis = ?";
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($id, $_SESSION['ID']));
|
||||
|
||||
//Redirection vers la page de l'amis
|
||||
header('Location: index.php?id='.$id);
|
26
inc/edit_commentaire.html
Executable file
26
inc/edit_commentaire.html
Executable file
@ -0,0 +1,26 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Edition de commentaire</title>
|
||||
</head>
|
||||
<body>
|
||||
<form action="../action.php?actionid=8" method="post">
|
||||
<table border='1' align='center'>
|
||||
<tr>
|
||||
<td> Contenu du commentaire </td>
|
||||
<td> <input type="text" name="commentaire" /> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> ID du texte </td>
|
||||
<td> <input type="text" name="idtexte" /> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> ID du commentaire </td>
|
||||
<td> <input type="text" name="idcommentaire" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" style="text-align: center"> <input type="submit" value="Modifier" /> </td>
|
||||
</table>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
26
inc/edit_niveau_visibilite.html
Executable file
26
inc/edit_niveau_visibilite.html
Executable file
@ -0,0 +1,26 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Edition du niveau de visibilité d'un texte</title>
|
||||
</head>
|
||||
<body>
|
||||
<form action="../action.php?actionid=14" method="get">
|
||||
<table border='1' align='center'>
|
||||
<tr>
|
||||
<td> Nouveau niveau de visibilité </td>
|
||||
<td>
|
||||
<input name="nouveau_niveau_visibilite" value="3" type="radio"> Moi uniquement
|
||||
<input name="nouveau_niveau_visibilite" value="2" checked="" type="radio"> Moi et mes amis
|
||||
<input name="nouveau_niveau_visibilite" value="1" type="radio"> Tout le monde
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> ID du texte </td>
|
||||
<td> <input type="text" name="idtexte" /> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" style="text-align: center"> <input type="submit" value="Modifier" /> </td>
|
||||
</table>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
22
inc/edit_nom_video.html
Executable file
22
inc/edit_nom_video.html
Executable file
@ -0,0 +1,22 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Edition du nom d'une vidéo</title>
|
||||
</head>
|
||||
<body>
|
||||
<form action="../action.php?actionid=12" method="post">
|
||||
<table border='1' align='center'>
|
||||
<tr>
|
||||
<td> Nom de la vidéo </td>
|
||||
<td> <input type="text" name="nouveau_nom_video" /> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> ID de la vidéo </td>
|
||||
<td> <input type="text" name="idvideo" /> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" style="text-align: center"> <input type="submit" value="Modifier" /> </td>
|
||||
</table>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
45
inc/effectuer_maintenance_account.php
Executable file
45
inc/effectuer_maintenance_account.php
Executable file
@ -0,0 +1,45 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required !");
|
||||
if(!isset($ok_maintenance))
|
||||
die("Invalid request!");
|
||||
if(!isset($_SERVER['HTTP_REFERER']))
|
||||
die("Invalid call!");
|
||||
|
||||
//Vérifions que l'appel du fichier vient bien de parametres.php
|
||||
if(!preg_match("/parametres.php?/", $_SERVER['HTTP_REFERER']))
|
||||
die("This request has been stopped for security reasons.");
|
||||
|
||||
//Vérifions que la variable nécessaire existe
|
||||
if(!isset($_POST['password']))
|
||||
die('Invalid arguments!');
|
||||
|
||||
//On propose un lien vers la page précédente
|
||||
echo "<title>Comunic - Maintenance de votre compte</title>";
|
||||
echo "<a href='".$_SERVER['HTTP_REFERER']."'>Retour à la page précédente</a> <br /><br />";
|
||||
|
||||
//Vérification du mot de passe
|
||||
echo "Contrôle du mot de passe...";
|
||||
//Cryptage du mot de passe envoyé
|
||||
$afficher = cherchenomprenom($_SESSION['ID'], $bdd); //Récupération des informations de l'utilisateur
|
||||
if(crypt_password($_POST['password']) != $afficher['password'])
|
||||
die("Mot de passe invalide! Quitte le script.");
|
||||
else
|
||||
echo "Mot de passe correct.<br />";
|
||||
|
||||
//On effectue la maintenance
|
||||
//Suppression des notifications
|
||||
echo "Suppression de vos notifications...<br />";
|
||||
$sql = "DELETE FROM notification WHERE ID_personne = ".$_SESSION['ID']." || ID_createur = ".$_SESSION['ID'];
|
||||
$resultat = $bdd->query($sql);
|
||||
echo "Terminé. <br />";
|
||||
|
||||
//On vide le chat prive
|
||||
echo "Suppression de vos posts sur le chat privé...<br />";
|
||||
$sql = "DELETE FROM chatprive WHERE ID_personne = ".$_SESSION['ID'];;
|
||||
$resultat = $bdd->query($sql);
|
||||
echo "Terminé. <br />";
|
||||
|
||||
//On quitte le script (sécurité)
|
||||
die();
|
153
inc/envoi_mail.php
Executable file
153
inc/envoi_mail.php
Executable file
@ -0,0 +1,153 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($send_mail))
|
||||
die();
|
||||
|
||||
//Chemin relatif
|
||||
if(!isset($add_path))
|
||||
{
|
||||
$add_path = "";
|
||||
}
|
||||
|
||||
//Inclusion de la configuration
|
||||
include_once($add_path.'inc/config/config.php');
|
||||
|
||||
//Préparation de l'envoi de mail
|
||||
//->préliminaire
|
||||
if(!isset($config_path_defined))
|
||||
{
|
||||
define('CONFIG_PATH', $add_path.'config.php');
|
||||
$config_path_defined = true;
|
||||
}
|
||||
|
||||
//Vérification de l'existence de l'autorisation d'envoi de mail
|
||||
if($active_envoi_mail == "oui")
|
||||
{
|
||||
//Paramètres d'envoi de mails
|
||||
//$nom_destinataire : Nom et prénom du destinataire
|
||||
//$texte_message : Code source HTML du message
|
||||
//$adresse_mail_destinataire : adresse mail du destinataire
|
||||
//$sujet : Sujet du message
|
||||
|
||||
//Préparation de l'envoi
|
||||
$message_html = "<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Comunic</title>
|
||||
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
|
||||
<style type='text/css'>
|
||||
body {margin:0px;padding:0px;background:#ffffff;font-family:arial, helvetica, sans-serif;}
|
||||
#top {margin:0px;padding:0px;background:#0066CC; color: #FFFFFF; width:100%; }
|
||||
#top .container { padding:0px 0px 0px 0px; height: 23px; }
|
||||
#top .container a {color: white; text-decoration: none; }
|
||||
.titre { text-align: center; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id='top'>
|
||||
<div class='container'>
|
||||
<strong><a href='".$urlsite."'>Comunic</a></strong>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
".$texte_message."
|
||||
|
||||
<h6 style='text-align: center'>Merci de ne pas répondre, ce message a été envoyé automatiquement.
|
||||
Pour changer les paramètres relatifs à l'envoi de mail,
|
||||
<a href='".$urlsite."connecter.php?redirect=parametres.php'>
|
||||
cliquez ici
|
||||
</a>.
|
||||
</h6>
|
||||
</body>
|
||||
</html>";
|
||||
|
||||
//Vérification de l'existence d'un forcage de redirection
|
||||
if($force_redirection_mails == "oui")
|
||||
{
|
||||
$adresse_mail_destinataire = $adresse_mail_redirection;
|
||||
}
|
||||
|
||||
//On vérifie quelle est la méthode d'envoi de mail
|
||||
if($methode_envoi_mail == "mail()")
|
||||
{
|
||||
//Utilisation de la fonction mail()
|
||||
//Définition des en-têtes
|
||||
$headers = array();
|
||||
$headers[] = "MIME-Version: 1.0";
|
||||
$headers[] = "Content-type: text/html; charset=iso-8859-1";
|
||||
$headers[] = "From: ".$nom_mail_expediteur." <".$mail_envoi.">";
|
||||
$headers[] = "X-Mailer: PHP/".phpversion();
|
||||
|
||||
//Envoi du mail
|
||||
mail($adresse_mail_destinataire, $sujet, wordwrap($message_html, 70), implode("\r\n", $headers));
|
||||
}
|
||||
else
|
||||
{
|
||||
//Utilisation de PHPMailer
|
||||
//SMTP needs accurate times, and the PHP time zone MUST be set
|
||||
//This should be done in your php.ini, but this is how to do it if you don't have access to that
|
||||
date_default_timezone_set('Etc/UTC');
|
||||
|
||||
require_once relativePath_3rdparty('phpmailer/PHPMailerAutoload.php');
|
||||
|
||||
//Create a new PHPMailer instance
|
||||
$mail = new PHPMailer();
|
||||
//Tell PHPMailer to use SMTP
|
||||
$mail->isSMTP();
|
||||
//Enable SMTP debugging
|
||||
// 0 = off (for production use)
|
||||
// 1 = client messages
|
||||
// 2 = client and server messages
|
||||
$mail->SMTPDebug = 0;
|
||||
//Ask for HTML-friendly debug output
|
||||
$mail->Debugoutput = 'html';
|
||||
//Set the hostname of the mail server
|
||||
$mail->Host = $adresse_serveur_mail_envoi;
|
||||
//Set the SMTP port number - likely to be 25, 465 or 587
|
||||
$mail->Port = $port_serveur_mail_envoi;
|
||||
|
||||
//Vérification de la nécessité de connexion
|
||||
if($active_login_envoi_mail == "oui")
|
||||
{
|
||||
//Whether to use SMTP authentication
|
||||
$mail->SMTPAuth = true;
|
||||
//Username to use for SMTP authentication
|
||||
$mail->Username = $mail_envoi;
|
||||
//Password to use for SMTP authentication
|
||||
$mail->Password = $password_mail_envoi;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Whether to don't use SMTP authentication
|
||||
$mail->SMTPAuth = false;
|
||||
}
|
||||
|
||||
//Set who the message is to be sent from
|
||||
$mail->setFrom($mail_envoi, $nom_mail_expediteur);
|
||||
//Set who the message is to be sent to
|
||||
$mail->addAddress($adresse_mail_destinataire, $nom_destinataire);
|
||||
//Set the subject line
|
||||
$mail->Subject = $sujet;
|
||||
//Read an HTML message body from an external file, convert referenced images to embedded,
|
||||
//convert HTML into a basic plain-text alternative body
|
||||
$mail->msgHTML($message_html, dirname(__FILE__));
|
||||
//Replace the plain text body with one created manually
|
||||
$mail->AltBody = (isset($description_rapide) ? $description_rapide :'Ce message vous est envoyé de la part de '.$nom_mail_expediteur);
|
||||
//Attach an image file
|
||||
//$mail->addAttachment('images/phpmailer_mini.png');
|
||||
|
||||
//send the message, check for errors
|
||||
if (!$mail->send()) {
|
||||
$statut = "Mailer Error: " . $mail->ErrorInfo;
|
||||
} else {
|
||||
$statut = "Message sent!";
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$statut = "Erreur: l'envoi de mail est interdit.";
|
||||
}
|
||||
|
||||
//echo (isset($statut) ? $statut : "Statut inconnu.");
|
||||
?>
|
18
inc/functions/api.php
Normal file
18
inc/functions/api.php
Normal file
@ -0,0 +1,18 @@
|
||||
<?php
|
||||
/**
|
||||
* API functions
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
/**
|
||||
* Check API credentials
|
||||
*
|
||||
* @param String $serviceName The name of the service
|
||||
* @param String $token The service's token
|
||||
* @param String $bdd BDD object
|
||||
* @return Boolean True or false / Depending of validity of credentials
|
||||
*/
|
||||
function API_checkCredentials($serviceName, $token, $bdd){
|
||||
|
||||
}
|
3214
inc/functions/main.php
Executable file
3214
inc/functions/main.php
Executable file
File diff suppressed because it is too large
Load Diff
194
inc/functions/sql.php
Normal file
194
inc/functions/sql.php
Normal file
@ -0,0 +1,194 @@
|
||||
<?php
|
||||
/**
|
||||
* SQL functions
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
//Fonction de récupération d'une ou plusieurs entrées dans la base de données
|
||||
function select_sql($table, $conditions, $bdd, $tableau_valeurs = array())
|
||||
{
|
||||
//Requête SQL de recherche
|
||||
$sql = "SELECT * FROM ".$table.($conditions != "" ? " WHERE ".$conditions : "");
|
||||
if(!$requete = $bdd->prepare($sql))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Un problème indéterminé a survenu. Impossible d\'exécuter <i>if(!$requete = $bdd->prepare($sql))</i>');
|
||||
|
||||
die('Un problème indéterminé a survenu. Merci de réessayer en rechargeant la page. (F5)');
|
||||
}
|
||||
if(!$requete->execute($tableau_valeurs))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Une erreur a survenue lors de la consultation de la base de données. Impossible d\'exécuter <i>if(!$requete->execute($tableau_valeurs))</i>');
|
||||
|
||||
die(echo_erreur('Une erreur a survenue lors de la consultation de la base de données. Merci de réessayer en rechargeant la page.'));
|
||||
}
|
||||
|
||||
//Enregistrement des résultats
|
||||
$liste = array();
|
||||
while($enregistrer = $requete->fetch())
|
||||
$liste[] = $enregistrer;
|
||||
|
||||
//Fermeture de la requête
|
||||
$requete->closeCursor();
|
||||
|
||||
//Affichage de la requête SQL ( en mode debug SEULEMENT !!! )
|
||||
//echo $sql."<br />";
|
||||
|
||||
//Renvoi du résultat
|
||||
return $liste;
|
||||
}
|
||||
|
||||
//Fonction de comptage d'une ou plusieurs entrées dans la base de données
|
||||
function count_sql($table, $conditions, $bdd, $tableau_valeurs = array())
|
||||
{
|
||||
//Requête SQL de recherche
|
||||
$sql = "SELECT COUNT(*) AS count FROM ".$table.($conditions != "" ? " WHERE ".$conditions : "");
|
||||
if(!$requete = $bdd->prepare($sql))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Un problème indéterminé a survenu. Impossible d\'exécuter <i>if(!$requete = $bdd->prepare($sql))</i>');
|
||||
|
||||
die('Un problème indéterminé a survenu. Merci de réessayer en rechargeant la page. (F5)');
|
||||
}
|
||||
if(!$requete->execute($tableau_valeurs))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Une erreur a survenue lors de la consultation de la base de données (pour compter des entrées). Impossible d\'exécuter <i>if(!$requete->execute($tableau_valeurs))</i>');
|
||||
|
||||
die(echo_erreur('Une erreur a survenue lors de la consultation de la base de données. Merci de réessayer en rechargeant la page.'));
|
||||
}
|
||||
|
||||
//Enregistrement du résultat
|
||||
if(!$resultat = $requete->fetch())
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Une erreur a survenue lors de la consultation de la base de données (pour compter des entrées). Impossible d\'exécuter <i>if(!$resultat = $requete->fetch())</i>');
|
||||
|
||||
die(echo_erreur('Une erreur a survenue lors de la consultation de la base de données. Merci de réessayer en rechargeant la page.'));
|
||||
}
|
||||
|
||||
if(!isset($resultat['count']))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Une erreur a survenue lors de la consultation de la base de données (pour compter des entrées). <i>Retour incorrect de la base de données. (Absence de $resultat["count"])</i>');
|
||||
|
||||
die(echo_erreur('Une erreur a survenue lors de la consultation de la base de données. Merci de réessayer en rechargeant la page.'));
|
||||
}
|
||||
|
||||
//Fermeture de la requête
|
||||
$requete->closeCursor();
|
||||
|
||||
//Renvoi du résultat
|
||||
return $resultat['count'];
|
||||
}
|
||||
|
||||
//Fonction d'ajout d'une entrée dans la base de données
|
||||
function insert_sql($table, $nom_valeur, $valeurs, $bdd, $tableau_valeurs = array())
|
||||
{
|
||||
//Fonction d'insertion dans la base de données
|
||||
$sql = "INSERT INTO ".$table." (".$nom_valeur.") VALUES (".$valeurs.")";
|
||||
$requete = $bdd->prepare($sql);
|
||||
if(!$requete->execute($tableau_valeurs))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'L\'enregistrement a échoué');
|
||||
|
||||
die('L\'enregistrement a échoué');
|
||||
}
|
||||
}
|
||||
|
||||
//Fonction de modification d'une entrée dans la base de données
|
||||
function update_sql($table, $modifications, $conditions, $bdd, $tableau_valeurs = array())
|
||||
{
|
||||
//Requête SQL de mise à jour
|
||||
$sql = "UPDATE ".$table." SET ".$modifications." WHERE ".$conditions;
|
||||
if(!$requete = $bdd->prepare($sql))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Un problème indéterminé a survenu. Impossible d\'exécuter <i>$requete = $bdd->prepare($sql);</i>');
|
||||
|
||||
die('Un problème indéterminé a survenu. Merci de réessayer en rechargeant la page. (F5)');
|
||||
}
|
||||
if(!$requete->execute($tableau_valeurs))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Une erreur a survenue lors de la mise à jour de la base de données. Impossible d\'executer la requête.');
|
||||
|
||||
die(echo_erreur('Une erreur a survenue lors de la mise à jour de la base de données. Merci de réessayer en rechargeant la page.'));
|
||||
}
|
||||
}
|
||||
|
||||
//Fonction de suppression d'enregistrements dans la base de données
|
||||
function delete_sql($table, $conditions, $bdd, $tableau_valeurs = array())
|
||||
{
|
||||
//Requête SQL de suppression
|
||||
$sql = "DELETE FROM ".$table." WHERE ".$conditions;
|
||||
if(!$requete = $bdd->prepare($sql))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Un problème indéterminé a survenu. Impossible d\'exécuter <i>$requete = $bdd->prepare($sql);</i>');
|
||||
|
||||
die('Un problème indéterminé a survenu. Merci de réessayer en rechargeant la page. (F5)');
|
||||
}
|
||||
if(!$requete->execute($tableau_valeurs))
|
||||
{
|
||||
//Envoi d'un rapport d'erreur
|
||||
report_sql($sql, 'Une erreur a survenue lors de la suppression d\'entrées de la base de données. Impossible d\'exécuter la requête.');
|
||||
|
||||
die(echo_erreur('Une erreur a survenue lors de la suppression d\'entrées de la base de données. Merci de réessayer en rechargeant la page.'));
|
||||
}
|
||||
}
|
||||
|
||||
//Fonction permettant de rapporter une erreur dans l'exécution d'un script SQL
|
||||
function report_sql($requete_sql, $raison = "La raison n'a pas été spécifiée.")
|
||||
{
|
||||
//Inclusion de la configuration
|
||||
include('inc/config/config.php');
|
||||
|
||||
|
||||
//Envoi du message
|
||||
//Vérification de l'autorisation d'envoi de mails
|
||||
if($active_envoi_mail == "oui")
|
||||
{
|
||||
//Envoi du message
|
||||
$send_mail = true;
|
||||
$sujet = "[SQL Comunic] Erreur dans une requête SQL"; //Sujet
|
||||
$description_rapide = "Une erreure fatale est arrivee dans une requete pour Comunic.";
|
||||
$nom_destinataire = "Dev de Comunic";
|
||||
$adresse_mail_destinataire = $mail_envoi_erreur_sql;
|
||||
$message = "<h2 style='text-align: center'>Erreur dans la requête SQL</h2>
|
||||
<p>Bonjour, ce message vous a été adressé suite à une erreur fatale dans un script SQL. La requête SQL est la suivante : <i>".$requete_sql."</i></p>
|
||||
<p>La raison de l'erreur est la suivante: ".$raison."</p>
|
||||
<p>Les informations complémentaires sont les suivantes :</p>
|
||||
<table>
|
||||
<tr><td><b>$"."_POST</b></td></tr>";
|
||||
//Parcours de la variable $_POST
|
||||
foreach($_POST as $nom=>$valeur)
|
||||
$message.= "<tr><td>".$nom." :</td><td>".$valeur."</td></tr>";
|
||||
|
||||
$message .= "<tr><td><b>$"."_GET</b></td></tr>";
|
||||
//Parcours de la variable $_GET
|
||||
foreach($_GET as $nom=>$valeur)
|
||||
$message.= "<tr><td>".$nom." :</td><td>".$valeur."</td></tr>";
|
||||
|
||||
$message .= "<tr><td><b>$"."_SESSION</b></td></tr>";
|
||||
//Parcours de la variable $_SESSION
|
||||
foreach($_SESSION as $nom=>$valeur)
|
||||
$message.= "<tr><td>".$nom." :</td><td>".$valeur."</td></tr>";
|
||||
|
||||
$message .= "<tr><td><b>$"."_SERVER</b></td></tr>";
|
||||
//Parcours de la variable $_SERVER
|
||||
foreach($_SERVER as $nom=>$valeur)
|
||||
$message.= "<tr><td>".$nom." :</td><td>".$valeur."</td></tr>";
|
||||
$message .= "</table>"; //Message
|
||||
$texte_message = $message;
|
||||
|
||||
//Envoi du message
|
||||
include(websiteRelativePath('inc/envoi_mail.php'));
|
||||
|
||||
echo "<!-- MailAdmin sent -->";
|
||||
}
|
||||
|
||||
}
|
30
inc/functions/url.php
Normal file
30
inc/functions/url.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
/**
|
||||
* URL functions
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
/**
|
||||
* Returns informations about typed URL
|
||||
*
|
||||
* @return Array Infos about URL
|
||||
*/
|
||||
function getInfosTypedURL(){
|
||||
$data = array();
|
||||
|
||||
//On récupère l'URI de base
|
||||
$data['uri_base'] = str_replace("index.php", "", $_SERVER['SCRIPT_NAME']);
|
||||
|
||||
//On enlève l'URI de base à l'URL saisie
|
||||
$data['url_saisie'] = str_replace($data['uri_base'], "", $_SERVER['REDIRECT_URL']);
|
||||
|
||||
//On récupère le nom du premier sous-dossier (si il y a un slash)
|
||||
if(str_replace("/", "", $data['url_saisie']) != $data['url_saisie'])
|
||||
$data['premier_dossier'] = strstr($data['url_saisie'], "/", true);
|
||||
else
|
||||
$data['premier_dossier'] = $data['url_saisie'];
|
||||
|
||||
//Returning data
|
||||
return $data;
|
||||
}
|
84
inc/generate_pdf.php
Executable file
84
inc/generate_pdf.php
Executable file
@ -0,0 +1,84 @@
|
||||
<?php
|
||||
//Vérification de sécurité
|
||||
if(!isset($nom_fichier_pdf) OR !isset($liste_pages) OR !isset($auteur_pdf) OR !isset($titre_pdf) OR !isset($sujet_pdf) OR !isset($pdf_key_word))
|
||||
die('Invalid call !');
|
||||
|
||||
if(!isset($complement_url))
|
||||
$complement_url = "./";
|
||||
|
||||
// Include the main TCPDF library (search for installation path).
|
||||
require_once(relativePath_3rdparty('tcpdf/tcpdf.php'));
|
||||
|
||||
// create new PDF document
|
||||
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
|
||||
|
||||
// set document information
|
||||
$pdf->SetCreator(PDF_CREATOR);
|
||||
$pdf->SetAuthor($auteur_pdf);
|
||||
$pdf->SetTitle($titre_pdf);
|
||||
$pdf->SetSubject($sujet_pdf);
|
||||
$pdf->SetKeywords($pdf_key_word);
|
||||
|
||||
// set default header data
|
||||
//$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 061', PDF_HEADER_STRING);
|
||||
|
||||
// set header and footer fonts
|
||||
//$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
|
||||
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
|
||||
|
||||
// set default monospaced font
|
||||
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
|
||||
|
||||
// set margins
|
||||
//$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
|
||||
//$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
|
||||
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
|
||||
|
||||
// set auto page breaks
|
||||
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
|
||||
|
||||
// set image scale factor
|
||||
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
|
||||
|
||||
// set some language-dependent strings (optional)
|
||||
if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
|
||||
require_once(dirname(__FILE__).'/lang/eng.php');
|
||||
$pdf->setLanguageArray($l);
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------
|
||||
|
||||
// set font
|
||||
$pdf->SetFont('helvetica', '', 10);
|
||||
|
||||
/* NOTE:
|
||||
* *********************************************************
|
||||
* You can load external XHTML using :
|
||||
*
|
||||
* $html = file_get_contents('/path/to/your/file.html');
|
||||
*
|
||||
* External CSS files will be automatically loaded.
|
||||
* Sometimes you need to fix the path of the external CSS.
|
||||
* *********************************************************
|
||||
*/
|
||||
|
||||
//Ajout des pages
|
||||
foreach($liste_pages as $ajouter)
|
||||
{
|
||||
// add a page
|
||||
$pdf->AddPage();
|
||||
|
||||
// output the HTML content
|
||||
$pdf->writeHTML($ajouter, true, false, true, false, '');
|
||||
}
|
||||
// reset pointer to the last page
|
||||
$pdf->lastPage();
|
||||
|
||||
// ---------------------------------------------------------
|
||||
|
||||
//Close and output PDF document
|
||||
$pdf->Output($nom_fichier_pdf, 'I');
|
||||
|
||||
//============================================================+
|
||||
// END OF FILE
|
||||
//============================================================+
|
57
inc/gere_abonnement_ami.php
Executable file
57
inc/gere_abonnement_ami.php
Executable file
@ -0,0 +1,57 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($gere_abonnement_ami))
|
||||
die("Invalid request !");
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required !");
|
||||
|
||||
//Vérification de l'existence des variables nécessaires à l'exécution du script
|
||||
if(!isset($_GET['id']))
|
||||
die("Missing arguments!");
|
||||
|
||||
//On commence par préparer l'exécution du script (avec sécurité)
|
||||
$id = $_GET['id']*1;
|
||||
|
||||
//On vérifie si il s'agit de la même personne
|
||||
if($id == $_SESSION['ID'])
|
||||
die("Abonné");
|
||||
|
||||
//On vérifie que les deux personnes sont amies
|
||||
if(!detectesilapersonneestamie($_SESSION['ID'], $id, $bdd))
|
||||
die("You are not friend !");
|
||||
|
||||
//On récupère les informations sur la table ami
|
||||
$sql = "SELECT * FROM amis WHERE (ID_personne = ?) && (ID_amis = ?) && (actif = 1)";
|
||||
$requeteamis = $bdd->prepare($sql);
|
||||
$requeteamis->execute(array($_SESSION['ID'], $id));
|
||||
|
||||
//On renvoi le résultat suivant si la personne est amie ou non
|
||||
if(!$info_ami = $requeteamis->fetch())
|
||||
{
|
||||
//Fermeture de la requete
|
||||
$requeteamis->closeCursor();
|
||||
|
||||
//Message d'erreur
|
||||
die("Une erreur a survenue. Merci de réessayer ultérieurement.");
|
||||
}
|
||||
|
||||
//Fermeture de la requete
|
||||
$requeteamis->closeCursor();
|
||||
|
||||
//On vérifie si il faut changer le statut d'abonnement
|
||||
if(isset($_GET['change']))
|
||||
{
|
||||
//On vérifie si il faut ajouter ou supprimer l'abonnement
|
||||
$statut = ($info_ami['abonnement'] == 0 ? 1 : 0);
|
||||
|
||||
//On met à jour la base de données
|
||||
$sql = "UPDATE amis SET abonnement = ? WHERE ID_personne = ? AND ID_amis = ?";
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($statut, $_SESSION['ID'], $id));
|
||||
|
||||
//On modifie la variable
|
||||
$info_ami['abonnement'] = $statut;
|
||||
}
|
||||
|
||||
//On affiche le statut d'abonnement
|
||||
echo ($info_ami['abonnement'] == 0 ? "S'abonner" : "<img src='".path_img_asset('succes.png', "Vous êtes abonné à la personne.")."' /> Abonné");
|
25
inc/gestion_piwik.php
Executable file
25
inc/gestion_piwik.php
Executable file
@ -0,0 +1,25 @@
|
||||
<?php
|
||||
if(!isset($_SESSION))
|
||||
die("Invalid call!");
|
||||
|
||||
//On vérifie si Piwik est bien activé
|
||||
if($enable_piwik == 1)
|
||||
{
|
||||
?><!-- Piwik -->
|
||||
<script type="text/javascript">
|
||||
var _paq = _paq || [];
|
||||
_paq.push(["setDoNotTrack", true]);
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="<?php echo $adresse_piwik; ?>";
|
||||
_paq.push(['setTrackerUrl', u+'piwik.php']);
|
||||
_paq.push(['setSiteId', <?php echo $id_site_piwik; ?>]);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<noscript><p><img src="<?php echo $adresse_piwik; ?>piwik/piwik.php?idsite=<?php echo $id_site_piwik; ?>" style="border:0;" alt="" /></p></noscript>
|
||||
<!-- End Piwik Code -->
|
||||
<?php
|
||||
}
|
284
inc/header_page.php
Executable file
284
inc/header_page.php
Executable file
@ -0,0 +1,284 @@
|
||||
<?php
|
||||
//Vérification de sécurité
|
||||
if(!isset($header_page_ok))
|
||||
die("Invalid call !");
|
||||
|
||||
//Vérification de l'existence de la variable d'une personne
|
||||
if(!isset($_GET['id']))
|
||||
die("Missing arguments!");
|
||||
|
||||
//Détermination de l'ID de la personne
|
||||
$id = $_GET['id']*1;
|
||||
|
||||
//Si c'est le fil d'actualité, on quitte immédiatement
|
||||
if($id == 0)
|
||||
goto end_of_header_page;
|
||||
|
||||
//Récupération des informations de la personne
|
||||
$afficher = cherchenomprenom($id, $bdd);
|
||||
|
||||
//Si la personne n'est pas connectée, on vérifie si on peut ajouter la suite de la page
|
||||
if(!isset($_SESSION['ID']))
|
||||
{
|
||||
if($afficher['pageouverte'] != 1)
|
||||
die("Le contenu ne peut être chargé : La page n'est pas ouverte.");
|
||||
}
|
||||
?><div class='headercontenu' style='background-image: url("<?php
|
||||
//Requete de l'existence d'une image de fond
|
||||
$id_img_fond = $id;
|
||||
//On vérifie si un complément est disponible
|
||||
echo imgfond($id_img_fond, null, null, null, null, true);
|
||||
|
||||
?>");' <?php
|
||||
//Ajoute des entrées dans le menu contextuel si nécessaire
|
||||
if(isset($_SESSION['ID']) AND $bloque_clic_droit == "oui")
|
||||
{
|
||||
if($_SESSION['ID'] == $id)
|
||||
{
|
||||
//Ajout des entrées dans la balise div
|
||||
?> onmouseover="AddMenuContextuelTop('parametres.php?c=imgfond','Modifier l\'image de fond');" onmouseout="DelMenuContextuelTop();"<?php
|
||||
}
|
||||
}
|
||||
?>>
|
||||
<!-- Panneau d'informations -->
|
||||
<?php
|
||||
//Uniquement si l'utilisateur est connecté
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//Liste d'amis si disponible
|
||||
?><div class="infopage">
|
||||
<?php
|
||||
//Liste d'amis si disponible
|
||||
if($afficher['liste_amis_publique'] == 1)
|
||||
?><div class="element_infopage">
|
||||
<a href="listeamis.php?id=<?php echo $afficher['ID']; ?>">
|
||||
<?php echo code_inc_img(path_img_asset('users_3.png'), "Liste d'amis"); ?>
|
||||
<span class="element_infopage_long_label">Liste d'amis</span>
|
||||
<span class="element_infopage_short_label">Amis</span>
|
||||
</a>
|
||||
</div><?php
|
||||
?>
|
||||
<div class="element_infopage">
|
||||
<a href="galerieimages.php?id=<?php echo $afficher['ID']; ?>">
|
||||
<?php echo code_inc_img(path_img_asset('small/image.png'), "Galerie d'images"); ?>
|
||||
<span class="element_infopage_long_label">Galerie d'images</span>
|
||||
<span class="element_infopage_short_label">Images</span>
|
||||
</a>
|
||||
</div>
|
||||
<?php
|
||||
//Private chat. Only if the person isn't on his page
|
||||
//And if the personn is connected.
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
if($id != $_SESSION['ID'])
|
||||
{
|
||||
?><div class="element_infopage">
|
||||
<a onClick="affiche_chat_prive(<?php echo $id; ?>)" class="a">
|
||||
<?php echo code_inc_img(path_img_asset('prive.png'), "Chat privé", "16"); ?>
|
||||
<span class="element_infopage_long_label">Ouvrir le chat privé</span>
|
||||
<span class="element_infopage_short_label">Chat Privé</span>
|
||||
</a>
|
||||
</div><?php
|
||||
}
|
||||
}
|
||||
?>
|
||||
</div><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
//Sinon, un petit formulaire de connexion...
|
||||
?><div class='infopage'>
|
||||
<form action='connecter.php?redirect=<?php echo urlencode('index.php?id='.$id) ?>' name='connexion' method='post'>
|
||||
<table>
|
||||
<tr><td>Mail :</td><td><input type='text' name='mail' /> </td></tr>
|
||||
<tr><td>Mot de passe </td><td> <input type='password' name='motdepasse'></td></tr>
|
||||
<tr><td></td><td><input type='submit' value='Connexion' /> </td></tr>
|
||||
<tr><td>Creer un compte</td><td><a href='creercompte.php' title='Creer un nouveau compte'>Nouveau compte</a></td></tr>
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
<!-- Fin de: panneau d'informations-->
|
||||
<table class='header_infos_user'>
|
||||
<tr class="first_tr">
|
||||
<td width="200">
|
||||
<?php
|
||||
//Requete de recherche d'image
|
||||
echo avatar($id, "./", 128, 128);
|
||||
|
||||
//Uniquement si l'utilisateur est connecté
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//Modification de l'avatar uniquement si c'est la page de la personne
|
||||
if($_SESSION['ID'] == $id)
|
||||
{
|
||||
?><br /><font class="metro"><a class="button" href="parametres.php?c=avatar">Modifier l'avatar</a></font><?php
|
||||
|
||||
?> <menu type="context" id="header_page">
|
||||
<menuitem label="Modifier l'image de fond" onclick="window.location='<?php echo $urlsite; ?>parametres.php?c=imgfond';"></menuitem>
|
||||
</menu><?php
|
||||
}
|
||||
}
|
||||
|
||||
?></td><td>
|
||||
<?php
|
||||
//Affichage du nom de la personne
|
||||
echo "<h2 id='nom_personne'>".corrige_caracteres_speciaux($afficher['prenom']." ".$afficher['nom'])."</h2>";
|
||||
|
||||
//On vérifie si la personne a un site web
|
||||
if($afficher['site_web'] != "") {
|
||||
echo "<div class='site_web'>";
|
||||
echo "<a href='".$afficher['site_web']."' title='Ouvrir le site web de la personne' target='_blank'>";
|
||||
echo code_inc_img(path_img_asset('small/world.png'));
|
||||
echo " Site web";
|
||||
echo "</a>";
|
||||
echo "</div>";
|
||||
}
|
||||
|
||||
//On vérifie si la page est vérifiée
|
||||
if($afficher['page_verifiee'] == 1)
|
||||
{
|
||||
echo "</td><td><img style='vertical-align: middle;' src='".path_img_asset('tick.png')."' title='Page vérifiée' />";
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//On vérifie si c'est un amis uniquement si l'utilisateur est connecte
|
||||
if (isset($_SESSION['ID']))
|
||||
{
|
||||
//On voit si c'est un amis
|
||||
if($id != $_SESSION['ID'])
|
||||
{
|
||||
if(!detectesilapersonneestamie($_SESSION['ID'], $id, $bdd))
|
||||
{
|
||||
$detectesilapersonneestamie_false = true;
|
||||
|
||||
//On détermine si la personne est autorisée ou pas à afficher la page
|
||||
if($afficher['public'] != 1)
|
||||
{
|
||||
//La personne n'est pas autorisée à voire la page
|
||||
$non_amis = true;
|
||||
|
||||
}
|
||||
|
||||
//On vérifie si cette personne l'a demandée en ami
|
||||
if(!isset_demande_amis($_SESSION['ID'], $id, $bdd))
|
||||
{
|
||||
//L'autre personne ne l'a pas demandée en ami
|
||||
if(!isset_demande_amis($id, $_SESSION['ID'], $bdd) AND (!isset($_GET['demanderamis'])))
|
||||
{
|
||||
echo "<td class='invite_amis'><a href='index.php?id=".$id."&demanderamis=1'>Demander en amis</a></td>";
|
||||
}
|
||||
else
|
||||
{
|
||||
//On vérifie si il existe une demande à devenir amis
|
||||
if(isset($_GET['demanderamis']))
|
||||
{
|
||||
//Exécution de la demande
|
||||
demandeamis($_GET['id'], $_SESSION['ID'], $bdd);
|
||||
}
|
||||
|
||||
echo "<td class='invite_amis'>";
|
||||
echo code_inc_img(path_img_asset('succes.png'), "Succè");
|
||||
echo" Demande envoyée (<a href='action.php?actionid=23&id=".$id."'>supprimer</a>)";
|
||||
echo "</td>";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//L'autre personne l'a demandée en amie
|
||||
echo "<td class='invite_amis'>";
|
||||
echo "Invitation reçue: ";
|
||||
echo "<a href='amis.php?action=activer&id=".$id."'>";
|
||||
echo code_inc_img(path_img_asset('succes.png'), "Accepter l'invitation");
|
||||
echo "</a>";
|
||||
echo "<a href='amis.php?action=supp&id=".$id."'>";
|
||||
echo code_inc_img(path_img_asset('supp.png'), "REfuser l'invitation");
|
||||
echo "</a>";
|
||||
echo "</td>";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//On affiche le bouton d'abonnement
|
||||
echo "<td><div id='abonnement_".$id."' class='bouton_abonnement' onClick='get_abonnement(".$id.", 1);'></div></td>";
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if($afficher['pageouverte'] == 1)
|
||||
{
|
||||
$non_amis = true;
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" class="aimepage"><?php
|
||||
//Recherche des j'aimes
|
||||
//On vérifie déja si il faut modifier un j'aime - uniquement si l'utilisateur est connecté
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
if((isset($_GET['like'])) && (isset($_GET['aime'])) && (isset($_GET['typeaime_page'])))
|
||||
{
|
||||
if($_GET['like'] == $id)
|
||||
{
|
||||
aimeaimeplus($_GET['aime'], $_GET['like'], $_SESSION['ID'], $bdd, "page");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Requete des j'aimes
|
||||
$retour = requeteaime($id, $bdd, "page");
|
||||
|
||||
$vousaimez = $retour['vousaimez'];
|
||||
$personnesaiment = $retour['personnesaiment'];
|
||||
|
||||
//Ouverture du contenur des j'aimes
|
||||
echo "<span class='aime_contener' id='aime_page'>";
|
||||
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
if($vousaimez == 0)
|
||||
{
|
||||
echo "<span class='aime' ><a onClick='like_text_page(".$id.", \"page\", 0)'>";
|
||||
echo code_inc_img(path_img_asset('aime.png'));
|
||||
echo " ".$lang[33]."</a> </span>";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<span class='aime' ><a onClick='like_text_page(".$id.", \"page\", 1)'>";
|
||||
echo code_inc_img(path_img_asset('aimeplus.png'));
|
||||
echo " ".$lang[34]."</a> </span> ";
|
||||
}
|
||||
}
|
||||
|
||||
if ($personnesaiment == 1)
|
||||
{
|
||||
echo "<font class='aimepage_texte'>Une personne aime.</font>";
|
||||
}
|
||||
elseif ($personnesaiment != 0)
|
||||
{
|
||||
echo "<font class='aimepage_texte'>".$personnesaiment." personnes aiment.</font>";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<font class='aimepage_texte'>Soyez le premier à aimer</font>";
|
||||
}
|
||||
|
||||
//Fermeture du conteneur des j'aime
|
||||
echo "</span>";
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><?php
|
||||
|
||||
//Fin du fichier
|
||||
end_of_header_page:
|
||||
//EOF
|
112
inc/helpers/assetsHelpers.php
Normal file
112
inc/helpers/assetsHelpers.php
Normal file
@ -0,0 +1,112 @@
|
||||
<?php
|
||||
/**
|
||||
* Assets Helpers
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
/**
|
||||
* Returns the path to an asset
|
||||
*
|
||||
* @param String $file The file researched in the assets
|
||||
*/
|
||||
function path_assets($file = ""){
|
||||
//Path to an asset
|
||||
return siteURL()."assets/".$file;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the relative path to an asset
|
||||
*
|
||||
* @param String $file The file researched in the assets
|
||||
*/
|
||||
function relativePath_assets($file = ""){
|
||||
//Path to an asset
|
||||
return websiteRelativePath()."assets/".$file;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns the path to an CSS asset
|
||||
*
|
||||
* @param String $CSSfile The CSS file
|
||||
*/
|
||||
function path_css_asset($CSSfile = ""){
|
||||
return path_assets('css/'.$CSSfile);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the path to an JS asset
|
||||
*
|
||||
* @param String $CSSfile The JS file
|
||||
*/
|
||||
function path_js_asset($JSfile = ""){
|
||||
return path_assets('js/'.$JSfile);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the path to an Image asset
|
||||
*
|
||||
* @param String $IMGfile The IMG file
|
||||
*/
|
||||
function path_img_asset($IMGfile = ""){
|
||||
return path_assets('img/'.$IMGfile);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the path to an audio asset
|
||||
*
|
||||
* @param String $AUDIOfile The audio file
|
||||
*/
|
||||
function path_audio_asset($AUDIOfile = ""){
|
||||
return path_assets('audio/'.$AUDIOfile);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the source code to call a css file
|
||||
*
|
||||
* @param String $file The css file to call
|
||||
*/
|
||||
function code_inc_css($file){
|
||||
return '<link rel="stylesheet" href="'.$file.'" />';
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the source code to call a javascript file
|
||||
*
|
||||
* @param String $file The javascript file to call
|
||||
*/
|
||||
function code_inc_js($file){
|
||||
return '<script type="text/javascript" src="'.$file.'"></script>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the source code to include an image
|
||||
*
|
||||
* @param String $file The image file to call
|
||||
* @param String $name Optionnal - The name of the image
|
||||
* @param String $width Optionnal - The width of the image
|
||||
* @param String $height Optionnal - The height of the image
|
||||
* @param String $style Optionnal - The style attached to the image
|
||||
* @param String $onClick Optionnal - What to do once image is clicked
|
||||
* @param String $class Optionnal - The class of the image
|
||||
*/
|
||||
function code_inc_img($file, $name = "", $width = "", $height = "", $style = "", $onClick="", $class = ""){
|
||||
if($width != "")
|
||||
$width = " width='".$width."' ";
|
||||
|
||||
if($height != "")
|
||||
$height = " height='".$height."' ";
|
||||
|
||||
if($style != "")
|
||||
$style = " style='".$style."' ";
|
||||
|
||||
if($onClick != "")
|
||||
$onClick = ' onClick="'.$onClick.'" ';
|
||||
|
||||
if($class != "")
|
||||
$class = ' onClick="'.$class.'" ';
|
||||
|
||||
//Returning result
|
||||
return '<img src="'.$file.'" name="'.$name.'" alt="'.$name.'" '.$width.$height.$style.$onClick.$class.' />';
|
||||
}
|
15
inc/helpers/callHelpers.php
Normal file
15
inc/helpers/callHelpers.php
Normal file
@ -0,0 +1,15 @@
|
||||
<?php
|
||||
/**
|
||||
* Calling Helpers
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
//Config helper
|
||||
include('configHelpers.php');
|
||||
|
||||
//Assets Help
|
||||
include('assetsHelpers.php');
|
||||
|
||||
//3rdparty helper
|
||||
include('thirdPartyHelpers.php');
|
84
inc/helpers/configHelpers.php
Normal file
84
inc/helpers/configHelpers.php
Normal file
@ -0,0 +1,84 @@
|
||||
<?php
|
||||
/**
|
||||
* Config Helpers
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
/**
|
||||
* Define constants for config
|
||||
*/
|
||||
define('URL_SITE', $urlsite);
|
||||
|
||||
|
||||
/**
|
||||
* Return the path to config
|
||||
*
|
||||
* @param String $file Optionnal - The file researched in website
|
||||
* @return String The path to the config
|
||||
*/
|
||||
function siteURL($file = ""){
|
||||
//Path to an asset
|
||||
return URL_SITE.$file;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the relative path to the website
|
||||
*
|
||||
* @param String $file Optionnal - The file searched in the website
|
||||
* @return String The relative path to the website
|
||||
*/
|
||||
function websiteRelativePath($file=""){
|
||||
return RELATIVE_PATH.$file;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the relative path to pages folder
|
||||
*
|
||||
* @param String $file Optionnal - The file searched in the website
|
||||
* @return String The relative path to the folder path
|
||||
*/
|
||||
function pagesRelativePath($file=""){
|
||||
return RELATIVE_PATH."inc/pages/".$file;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the path to user data
|
||||
*
|
||||
* @param String $file Optionnal - The file to search in user data
|
||||
* @return String The path to user data (from the URI of website)
|
||||
*/
|
||||
function userDataFolder($file=""){
|
||||
return USER_DATA_FOLDER.$file;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Returns relative path to user data
|
||||
*
|
||||
* @param String $file Optionnal - file to search in user data
|
||||
* @return String Path to user datas
|
||||
*/
|
||||
function relativeUserDataFolder($file=""){
|
||||
return websiteRelativePath().userDataFolder($file);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns web path to user data
|
||||
*
|
||||
* @param String $file Optionnal - file to search in user data
|
||||
* @return String Path to user datas
|
||||
*/
|
||||
function webUserDataFolder($file=""){
|
||||
return siteURL().userDataFolder($file);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns relative path to the core elements of the website
|
||||
*
|
||||
* @param String $file Optionnal - file researched in the core of website
|
||||
* @return String Relative path to the core of website
|
||||
*/
|
||||
function websiteCoreFolder($file = ""){
|
||||
return websiteRelativePath().CORE_PATH.$file;
|
||||
}
|
36
inc/helpers/thirdPartyHelpers.php
Normal file
36
inc/helpers/thirdPartyHelpers.php
Normal file
@ -0,0 +1,36 @@
|
||||
<?php
|
||||
/**
|
||||
* Third party Helpers
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
/**
|
||||
* Returns the path to a third party element, from the base of the website
|
||||
*
|
||||
* @param String $file The file in the 3rd Party
|
||||
*/
|
||||
function path_3rdparty($file = ""){
|
||||
//Path to an asset
|
||||
return THIRD_PARTY_FOLDER.$file;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the relative path to a third party element, from the base of the website
|
||||
*
|
||||
* @param String $file The file in the 3rd Party
|
||||
*/
|
||||
function relativePath_3rdparty($file = ""){
|
||||
//Path to an asset
|
||||
return websiteRelativePath().path_3rdparty($file);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the url of a Third Party element
|
||||
*
|
||||
* @param String $file The file in the third party
|
||||
* @return String The URL to the third party
|
||||
*/
|
||||
function url_3rdparty($file){
|
||||
return siteURL().path_3rdparty($file);
|
||||
}
|
5
inc/index.php
Executable file
5
inc/index.php
Executable file
@ -0,0 +1,5 @@
|
||||
<?php
|
||||
//Script de s<>curit<69>.
|
||||
//Ne pas supprimer
|
||||
header('location: ../index.php');
|
||||
?>
|
66
inc/initPage.php
Normal file
66
inc/initPage.php
Normal file
@ -0,0 +1,66 @@
|
||||
<?php
|
||||
/**
|
||||
* Page initiator
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
//Starting session
|
||||
if(!isset($_SESSION))
|
||||
session_start();
|
||||
|
||||
//Determine relative path to project
|
||||
$relativePath = str_replace("inc", "", __DIR__);
|
||||
if(!defined('RELATIVE_PATH'))
|
||||
define('RELATIVE_PATH', $relativePath);
|
||||
|
||||
//Inclusion of static configuration
|
||||
include($relativePath.'inc/config/staticConfig.php');
|
||||
|
||||
//Path to 3rdParty elements
|
||||
if(!defined('THIRD_PARTY_FOLDER'))
|
||||
define('THIRD_PARTY_FOLDER', $staticConfig["3rdPartyElementsFolder"]);
|
||||
|
||||
//Path to user data
|
||||
if(!defined('USER_DATA_FOLDER'))
|
||||
define('USER_DATA_FOLDER', $staticConfig["userDataFolder"]);
|
||||
|
||||
//Path to website core
|
||||
if(!defined('CORE_PATH'))
|
||||
define('CORE_PATH', $staticConfig["coreFolder"]);
|
||||
|
||||
//Files inclusion
|
||||
$filesToInclude = array(
|
||||
|
||||
//Inclusion of configuration
|
||||
$relativePath.'inc/config/config.php',
|
||||
|
||||
//Inclusion of helpers
|
||||
$relativePath.'inc/helpers/callHelpers.php',
|
||||
|
||||
//Connecting to DataBase
|
||||
$relativePath.'connexiondb.php',
|
||||
|
||||
//Inclusion of smiley list
|
||||
$relativePath.'inc/liste_smile.php',
|
||||
|
||||
//Pages list
|
||||
$relativePath.'inc/config/listPages.php',
|
||||
);
|
||||
|
||||
//Adding function files
|
||||
foreach($staticConfig['listFunctionsFiles'] as $functionFile)
|
||||
require_once($relativePath."inc/functions/".$functionFile.".php");
|
||||
|
||||
//Get the list of already loaded files
|
||||
$filesLoaded = get_included_files();
|
||||
|
||||
//Include files
|
||||
foreach($filesToInclude as $file){
|
||||
//Check if it has already been included
|
||||
if(!in_array($file, $filesLoaded))
|
||||
include($file);
|
||||
}
|
||||
|
||||
//Initializate langue
|
||||
$lang = detecteinstallelangue();
|
90
inc/lang/en.php
Executable file
90
inc/lang/en.php
Executable file
@ -0,0 +1,90 @@
|
||||
<?php
|
||||
//Fichier de langue
|
||||
//Nom de la langue : Anglais
|
||||
//Service Pierre 2014
|
||||
//Destin<69> <20> : Comuic
|
||||
//Tous droits r<>serv<72>s.
|
||||
|
||||
//Initialisation du tableau de langues
|
||||
$lang = array();
|
||||
$lang['nomlangue'] = "English";
|
||||
$lang['nomlangue_raccourcis'] = "en";
|
||||
|
||||
//Traductions de la langue
|
||||
$lang[0] = "Log In";
|
||||
$lang[1] = "Password";
|
||||
$lang[2] = "Lost ?";
|
||||
$lang[3] = "Create an account";
|
||||
$lang[4] = "You haven't told your password yet.";
|
||||
$lang[5] = "You haven't told your e-mail yet.";
|
||||
$lang[6] = "You haven't told your e-mail or password yet.";
|
||||
$lang[7] = "The e-mail or the password is wrong.";
|
||||
$lang[8] = "Use the mobile version.";
|
||||
$lang[9] = "About";
|
||||
$lang[10] = "Help Center";
|
||||
$lang[11] = "Open pages";
|
||||
$lang[12] = "First Name.";
|
||||
$lang[13] = "Surname.";
|
||||
$lang[14] = "Mail Adress.";
|
||||
$lang[15] = "Confirm Password";
|
||||
$lang[16] = "Create account";
|
||||
$lang[17] = "Validation image";
|
||||
$lang[18] = "Type the validation image's code";
|
||||
$lang[19] = "Type your surname";
|
||||
$lang[20] = "Type your first name";
|
||||
$lang[21] = "Type your e-mail adress";
|
||||
$lang[22] = "Type your password";
|
||||
$lang[23] = "Confirm your passord";
|
||||
$lang[24] = "Warning";
|
||||
$lang[25] = "What's the matter ?";
|
||||
$lang[26] = "Logout";
|
||||
$lang[27] = "All rights reserved";
|
||||
$lang[28] = "Thanks";
|
||||
$lang[29] = "Open public chat";
|
||||
$lang[30] = "Close public chat";
|
||||
$lang[31] = "Send";
|
||||
$lang[32] = "Add";
|
||||
$lang[33] = "I like";
|
||||
$lang[34] = "I don't like anymore";
|
||||
$lang[35] = "Comments";
|
||||
$lang[36] = "Next page";
|
||||
$lang[37] = "Send an image";
|
||||
$lang[38] = "Name";
|
||||
$lang[39] = "Search";
|
||||
$lang[40] = "Search a person";
|
||||
$lang[41] = "Your friends";
|
||||
$lang[42] = "Control panel";
|
||||
$lang[43] = "Friends";
|
||||
$lang[44] = "Visit"; //cr<63><72> pour Menu IE (peut <20>tre r<>utilis<69> dans d'autres usages)
|
||||
$lang[45] = "Quick add";
|
||||
$lang[46] = "When you create an account you accept our lience terms.";
|
||||
$lang[47] = "Operation canceled.";
|
||||
$lang[48] = "Do you want to delete this comment?";
|
||||
$lang[49] = "Do you want to delete this text?";
|
||||
$lang[50] = "Avanced add";
|
||||
$lang[51] = "No content have been added yet on this page!";
|
||||
$lang[52] = "Go back to the previous page.";
|
||||
$lang[53] = "Go back to the main page.";
|
||||
$lang[54] = "Quit Comunic.";
|
||||
$lang[55] = "Account Settings.";
|
||||
$lang[56] = "General";
|
||||
$lang[57] = "Save";
|
||||
$lang[58] = "Change password";
|
||||
$lang[59] = "Copy here the validation image's code.";
|
||||
$lang[60] = "An error occured while trying to get the friends's list. Please try later by refreshing the page.";
|
||||
$lang[61] = "people like that.";
|
||||
$lang[62] = "More";
|
||||
$lang[63] = "Go back to home page";
|
||||
$lang[64] = "Send a message";
|
||||
$lang[65] = "Private chat";
|
||||
$lang[66] = "With the private chat you'll be able to chat easily with your friends.";
|
||||
$lang[67] = "To have a private chat with anybody, you should go to your friend's page and click on \"Private Chat\".";
|
||||
$lang[68] = "They have already chatted with you....";
|
||||
$lang[69] = "Loading...";
|
||||
$lang[70] = "Start to chat";
|
||||
$lang[71] = "Go to his/her webpage.";
|
||||
$lang[72] = "From";
|
||||
$lang[73] = "To";
|
||||
$lang[74] = "Note: HTML codes are dislabed <br /> but you can use smiles if you want."; //For the webmail
|
||||
|
||||
//End Of File
|
89
inc/lang/fr.php
Executable file
89
inc/lang/fr.php
Executable file
@ -0,0 +1,89 @@
|
||||
<?php
|
||||
//Fichier de langue
|
||||
//Nom de la langue : Fran<61>ais
|
||||
//Service Pierre 2014
|
||||
//Destin<69> <20> : Comuic
|
||||
//Tous droits r<>serv<72>s.
|
||||
|
||||
//Initialisation du tableau de langues
|
||||
$lang = array();
|
||||
$lang['nomlangue'] = "Fran<EFBFBD>ais";
|
||||
$lang['nomlangue_raccourcis'] = "fr";
|
||||
|
||||
//Traductions de la langue
|
||||
$lang[0] = "Connexion";
|
||||
$lang[1] = "Mot de passe";
|
||||
$lang[2] = "Perdu ?";
|
||||
$lang[3] = "Créer un compte";
|
||||
$lang[4] = "Vous n'avez pas indiqué votre mot de passe.";
|
||||
$lang[5] = "Vous n'avez pas indiqué votre adresse mail.";
|
||||
$lang[6] = "Vous n'avez pas indiqué votre adresse mail ou votre mot de passe.";
|
||||
$lang[7] = "Votre adresse mail ou votre mot de passe est incorrect.";
|
||||
$lang[8] = "Utiliser la version mobile.";
|
||||
$lang[9] = "A propos";
|
||||
$lang[10] = "Centre d'aide";
|
||||
$lang[11] = "Pages ouvertes";
|
||||
$lang[12] = "Prénom";
|
||||
$lang[13] = "Nom"; //D'une personne
|
||||
$lang[14] = "Adresse Mail";
|
||||
$lang[15] = "Confirmer le mot de passe";
|
||||
$lang[16] = "Créer le compte";
|
||||
$lang[17] = "Image de validation";
|
||||
$lang[18] = "Recopiez le code de validation";
|
||||
$lang[19] = "Indiquez votre nom";
|
||||
$lang[20] = "Indiquez votre prénom";
|
||||
$lang[21] = "Indiquez votre adresse mail";
|
||||
$lang[22] = "Indiquez votre mot de passe";
|
||||
$lang[23] = "Confirmez votre mot de passe";
|
||||
$lang[24] = "Attention";
|
||||
$lang[25] = "Quel est le problème ?";
|
||||
$lang[26] = "Déconnexion";
|
||||
$lang[27] = "Tous droits réservés.";
|
||||
$lang[28] = "Remerciements";
|
||||
$lang[29] = "Ouvrir chat public";
|
||||
$lang[30] = "Fermer chat public";
|
||||
$lang[31] = "Envoyer";
|
||||
$lang[32] = "Ajouter";
|
||||
$lang[33] = "J'aime";
|
||||
$lang[34] = "Je n'aime plus";
|
||||
$lang[35] = "Commentaires";
|
||||
$lang[36] = "Page suivante";
|
||||
$lang[37] = "Envoi d'une image";
|
||||
$lang[38] = "Nom"; //D'une image
|
||||
$lang[39] = "Chercher";
|
||||
$lang[40] = "Rechercher une personne";
|
||||
$lang[41] = "Vos amis";
|
||||
$lang[42] = "Paramètres";
|
||||
$lang[43] = "Amis";
|
||||
$lang[44] = "Visitez"; //cr<63><72> pour Menu IE (peut <20>tre r<>utilis<69> dans d'autres usages)
|
||||
$lang[45] = "Ajout rapide";
|
||||
$lang[46] = "Lorsque vous créez un compte vous acceptez pleinement et sans réserve les conditions d'utilisation de Comunic."; //Message pour la licence lors de la cr<63>ation de compte
|
||||
$lang[47] = "Op<EFBFBD>ration annul<75>e."; //Optimis<69> pour javascript
|
||||
$lang[48] = "Voulez-vous vraiment supprimer ce commentaire ?";
|
||||
$lang[49] = "Voulez-vous vraiment supprimer ce texte ?";
|
||||
$lang[50] = "Ajout avec mise en page";
|
||||
$lang[51] = "Il n'y a pas encore de texte sur cette page !";
|
||||
$lang[52] = "Retour à la page principale.";
|
||||
$lang[53] = "Retour à la page précédente.";
|
||||
$lang[54] = "Quitter Comunic.";
|
||||
$lang[55] = "Paramètres du compte.";
|
||||
$lang[56] = "Général";
|
||||
$lang[57] = "Enregistrer";
|
||||
$lang[58] = "Changer le mot de passe";
|
||||
$lang[59] = "Recopiez le code contenu dans l'image ci-dessus. Si vous rencontrez des difficultées à lire le code, vous pouvez en essayer un autre en cliquant sur la flèche située à droite de l'image."; //Help for validation image
|
||||
$lang[60] = "Une erreur est survenue lors du chargement de la liste des amis. Merci de r<>essayer ult<6C>rieurment en actualisant la page.";
|
||||
$lang[61] = "personnes aiment ça."; //Info bouton j'aime
|
||||
$lang[62] = "Plus";
|
||||
$lang[63]="Retour à la page d'acceuil";
|
||||
$lang[64] = "Envoyer un message";
|
||||
$lang[65] = "Chat privé";
|
||||
$lang[66] = "Avec le chat privé vous pourrez communiquer facilement avec vos amis.";
|
||||
$lang[67] = "Pour avoir un chat privé avec quelqu'un, allez sur sa page et cliquez sur \"Chat privé\".";
|
||||
$lang[68] = "Ils ont déjà chatté avec vous....";
|
||||
$lang[69] = "Chargement en cours....";
|
||||
$lang[70] = "Commencer à chatter";
|
||||
$lang[71] = "Aller à son/sa page.";
|
||||
$lang[72] = "De";
|
||||
$lang[73] = "A";
|
||||
$lang[74] = "Note: Les codes HTML sont désactivés <br /> mais vous pouvez utiliser les smiley."; //Pour la messagerie
|
||||
//Fin du fichier de langue
|
5
inc/lang/index.php
Executable file
5
inc/lang/index.php
Executable file
@ -0,0 +1,5 @@
|
||||
<?php
|
||||
//Script de s<>curit<69>.
|
||||
//Ne pas supprimer
|
||||
header('location: ../index.php');
|
||||
?>
|
66
inc/like_comment.php
Executable file
66
inc/like_comment.php
Executable file
@ -0,0 +1,66 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required.");
|
||||
if(!isset($verification_edit_like_commentaire))
|
||||
die("Erreur 404.");
|
||||
|
||||
//On vérifie l'existence de la variable
|
||||
if(!isset($_GET['idcommentaire']) || !isset($_GET['idtexte']) || !isset($_GET['aime']))
|
||||
{
|
||||
die("Incorrect request. (Action : ".$action.")");
|
||||
}
|
||||
|
||||
//On récupère les informations sur le commentaire
|
||||
$sql = "SELECT * FROM commentaires WHERE ID = ?";
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($_GET['idcommentaire']));
|
||||
|
||||
//Récupération du résultat
|
||||
if(!$info_commentaire = $requete->fetch())
|
||||
{
|
||||
//Fermeture de la requete
|
||||
$requete->closeCursor();
|
||||
|
||||
//Message d'erreur
|
||||
die("404 Comment.");
|
||||
}
|
||||
|
||||
//Fermeture de la requête
|
||||
$requete->closeCursor();
|
||||
|
||||
//Vérification de la correspondance avec le texte
|
||||
if($info_commentaire['ID_texte'] != $_GET['idtexte'])
|
||||
{
|
||||
die("404 Text.");
|
||||
}
|
||||
|
||||
//On télécharge les informations sur le commentaire
|
||||
$info_aime = requeteaime($info_commentaire['ID'], $bdd, "commentaire");
|
||||
|
||||
//On détermine si il s'agit d'aimer ou de ne plus aimer
|
||||
if($info_aime['vousaimez'] == "1")
|
||||
{
|
||||
//Il s'agit de ne plus aimer
|
||||
//On retranche 1 au compteur
|
||||
$info_aime['personnesaiment']--;
|
||||
|
||||
//On supprime l'entrée "d'aime" dans la bdd
|
||||
$sql = "DELETE FROM aime WHERE (ID_type = ?) && (ID_personne = ?) && (type = ?)";
|
||||
$suppression = $bdd->prepare($sql);
|
||||
$suppression->execute(array($info_commentaire['ID'], $_SESSION['ID'], "commentaire"));
|
||||
}
|
||||
else
|
||||
{
|
||||
//Il s'agit d'aimer le texte
|
||||
//On ajoute 1 au compteur
|
||||
$info_aime['personnesaiment']++;
|
||||
|
||||
//On ajoute l'entrée dans la base de données
|
||||
$sql = "INSERT INTO aime (ID_type, ID_personne, Date_envoi, type) VALUES (?, ?, NOW(), ?)";
|
||||
$insertion = $bdd->prepare($sql);
|
||||
$insertion->execute(array($info_commentaire['ID'], $_SESSION['ID'], "commentaire"));
|
||||
}
|
||||
|
||||
//On renvoie le nombre de personnes qui aiment maintenant ce texte
|
||||
echo $info_aime['personnesaiment'];
|
5
inc/like_external_page.php
Executable file
5
inc/like_external_page.php
Executable file
@ -0,0 +1,5 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($like_external_page_verification))
|
||||
die('Invalid call!');
|
||||
?>J'aime
|
111
inc/like_texte_page.php
Executable file
111
inc/like_texte_page.php
Executable file
@ -0,0 +1,111 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required.");
|
||||
if(!isset($like_texte_page))
|
||||
die("Erreur 404.");
|
||||
|
||||
//On vérifie l'existence de la variable
|
||||
if(!isset($_GET['id']) || !isset($_GET['aime']) || !isset($_GET['type']))
|
||||
{
|
||||
die("Invalid request. (Action: ".$action.")");
|
||||
}
|
||||
|
||||
//On enregistre l'ID
|
||||
$id = $_GET['id']*1;
|
||||
|
||||
//On détermine (séurité) si il s'agit d'un texte ou d'une page
|
||||
if($_GET['type'] == "texte")
|
||||
{
|
||||
//Il s'agit d'un texte
|
||||
$type = "texte";
|
||||
|
||||
//On récupère les informations sur le texte pour vérifier si il existe
|
||||
$sql = "SELECT * FROM texte WHERE ID = ?";
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($id));
|
||||
|
||||
//Récupération du résultat
|
||||
if(!$info_texte = $requete->fetch())
|
||||
{
|
||||
//Fermeture de la requete
|
||||
$requete->closeCursor();
|
||||
|
||||
//Message d'erreur
|
||||
die("404 Text.");
|
||||
}
|
||||
|
||||
//Fermeture de la requête
|
||||
$requete->closeCursor();
|
||||
}
|
||||
else
|
||||
{
|
||||
//Il s'agit d'une page
|
||||
$type = "page";
|
||||
|
||||
//On vérifie si la personne existe
|
||||
if(!isset_account($id, $bdd))
|
||||
{
|
||||
die("This account doesn't exists.");
|
||||
}
|
||||
}
|
||||
|
||||
//On télécharge les informations sur les aimes du type
|
||||
$info_aime = requeteaime($id, $bdd, $type);
|
||||
|
||||
//On détermine si il s'agit d'aimer ou de ne plus aimer
|
||||
if($info_aime['vousaimez'] == "1")
|
||||
{
|
||||
//Il s'agit de ne plus aimer
|
||||
//On retranche 1 au compteur
|
||||
$info_aime['personnesaiment']--;
|
||||
$info_aime['vousaimez'] = 0;
|
||||
|
||||
//On supprime l'entrée "d'aime" dans la bdd
|
||||
$sql = "DELETE FROM aime WHERE (ID_type = ?) && (ID_personne = ?) && (type = ?)";
|
||||
$suppression = $bdd->prepare($sql);
|
||||
$suppression->execute(array($id, $_SESSION['ID'], $type));
|
||||
}
|
||||
else
|
||||
{
|
||||
//Il s'agit d'aimer le texte
|
||||
//On ajoute 1 au compteur
|
||||
$info_aime['personnesaiment']++;
|
||||
$info_aime['vousaimez'] = 1;
|
||||
|
||||
//On ajoute l'entrée dans la base de données
|
||||
$sql = "INSERT INTO aime (ID_type, ID_personne, Date_envoi, type) VALUES (?, ?, NOW(), ?)";
|
||||
$insertion = $bdd->prepare($sql);
|
||||
$insertion->execute(array($id, $_SESSION['ID'], $type));
|
||||
}
|
||||
|
||||
//On prépare le code source pour l'affichage
|
||||
$vousaimez = $info_aime['vousaimez'];
|
||||
$personnesaiment = $info_aime['personnesaiment'];
|
||||
|
||||
//On renvoie le code source pour le nouvel affichage
|
||||
|
||||
if($vousaimez == 0)
|
||||
{
|
||||
echo "<span class='aime' ><a onClick='like_text_page(".$id.", \"".$type."\", 0)' >";
|
||||
echo code_inc_img(path_img_asset('aime.png'));
|
||||
echo " ".$lang[33]."</a> </span>";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<span class='aime' ><a onClick='like_text_page(".$id.", \"".$type."\", 1)' >";
|
||||
echo code_inc_img(path_img_asset('aimeplus.png'));
|
||||
echo " ".$lang[34]."</a> </span> ";
|
||||
}
|
||||
|
||||
echo " ";
|
||||
|
||||
//Fin de l'affichage du code source
|
||||
if ($personnesaiment == 1)
|
||||
{
|
||||
echo " Une personne aime.";
|
||||
}
|
||||
elseif ($personnesaiment != 0)
|
||||
{
|
||||
echo " ".$personnesaiment." personnes aiment.";
|
||||
}
|
14
inc/liste_descriptions.php
Executable file
14
inc/liste_descriptions.php
Executable file
@ -0,0 +1,14 @@
|
||||
<?php
|
||||
//Chaque fichier du site doit avoir une description différente
|
||||
//C'est pourquoi ce fichier à été créé.
|
||||
|
||||
$liste_descriptions = array(
|
||||
"default" => "Comunic est un nouveau réseau social qui a été conçu face à la demande grandissante du respect de la vie privée sur Internet. Ce réseau social ne soumettra donc pas vos données personnelles à des robots.",
|
||||
"about.php" => "Page d'à propos de Comunic. (rappel des auteurs du site, de leur travail et des conditions d'utilisation ainsi que de la déclaration de confidentialité",
|
||||
"contact.php" => "Page permettant la prise de contact avec l'administration de Comunic pour diverses raisons : réinitialisation de mot de passe, rapport de bug,...",
|
||||
"aide.php" => "Centre d'aide de Comunic. Vous y trouverez diverses articles tel que l'affichage de smiley dans Comunic, l'ajout de vidéos YouTube...",
|
||||
"connecter.php" => "Page contenant un formulaire de connexion à Comunic mais aussi un lien de réinitialisation de mot de passe.",
|
||||
"recherche.php" => "Page permettant d'effectuer la recherche d'utilisateurs dans Comunic.",
|
||||
"solvepassword.php" => "Page permettant de récupérer le mot de passe de votre compte Comunic lorsque celui-ci a été perdu.",
|
||||
"whatiscomunic.php" => "Découvrez ce qu'est Comunic grâce à cette page !",
|
||||
);
|
82
inc/liste_smile.php
Executable file
82
inc/liste_smile.php
Executable file
@ -0,0 +1,82 @@
|
||||
<?php
|
||||
//Fichier de Smiley
|
||||
//Service Pierre 2014
|
||||
//On affiche les smiley
|
||||
$liste_smiley = array();
|
||||
$liste_smiley[] = array(':)', 'assets/img/smiley/smile.gif', 'Smile, pour en afficher saisir :)');
|
||||
$liste_smiley[] = array(':(', 'assets/img/smiley/smiley-cry.gif', 'Smile triste, pour en afficher saisir :(');
|
||||
$liste_smiley[] = array('(cool)', 'assets/img/smiley/smiley-cool.gif', 'Smile cool, pour en afficher saisir (cool)');
|
||||
$liste_smiley[] = array(':D', 'assets/img/smiley/smiley-laughing.gif', 'Smile rieur, pour en afficher saisir :D');
|
||||
$liste_smiley[] = array('(angry)', 'assets/img/smiley/smiley-yell.gif', 'Smile énervé, pour en afficher saisir (angry)');
|
||||
$liste_smiley[] = array(':P', 'assets/img/smiley/smiley-tongue-out.gif', 'Smile tirant la langue, pour en afficher saisir :P');
|
||||
$liste_smiley[] = array('(devil)', 'assets/img/smiley/devil_smile.gif', 'Smile diable, pour en afficher saisir (devil)');
|
||||
$liste_smiley[] = array(':O', 'assets/img/smiley/smiley-surprised.gif', 'Smile surpris, pour en afficher saisir :O');
|
||||
$liste_smiley[] = array(array(':x', ':-x', ':=x', ':#'), 'assets/img/smiley/smiley-sealed.gif', 'Smile bailloné, pour en afficher saisir :x');
|
||||
|
||||
//Divers
|
||||
$liste_smiley[] = array('(sun)', 'assets/img/smiley/sun.png', 'Soleil, pour en afficher saisir (sun)');
|
||||
$liste_smiley[] = array('(f)', 'assets/img/smiley/flower.png', 'Fleure, pour en afficher saisir (f)');
|
||||
$liste_smiley[] = array('(music)', 'assets/img/smiley/music.png', 'Musique, pour en afficher saisir (music)');
|
||||
$liste_smiley[] = array('(n)', 'assets/img/smiley/bad.gif', 'Pouce vers le bas, pour en afficher saisir (n)');
|
||||
$liste_smiley[] = array('(y)', 'assets/img/smiley/good.gif', 'Pouce vers le haut, pour en afficher saisir (y)');
|
||||
$liste_smiley[] = array(array('(rain)', '(london)'), 'assets/img/smiley/rain.png', 'Pluie, pour en afficher saisir (rain)');
|
||||
$liste_smiley[] = array(array('(o)', '(time)'), 'assets/img/smiley/time.png', 'Temps, pour en afficher saisir (o)');
|
||||
$liste_smiley[] = array(array('(h)', '(i)', '(l)'), 'assets/img/smiley/heart.png', 'Coeur, pour en afficher saisir (h)');
|
||||
$liste_smiley[] = array('(u)', 'assets/img/smiley/heart_break.png', 'Coeur cassé, pour en afficher saisir (u)');
|
||||
$liste_smiley[] = array('(bug)', 'assets/img/smiley/bug.png', 'Bug, pour en afficher saisir (bug)');
|
||||
$liste_smiley[] = array('(tea)', 'assets/img/smiley/tea_cup.png', 'Thé, pour en afficher saisir (tea)');
|
||||
$liste_smiley[] = array(array('(cake)', '(^)'), 'assets/img/smiley/cake.png', 'Gâteau, pour en afficher saisir (cake)');
|
||||
$liste_smiley[] = array(array('(pizza)', '(pi)'), 'assets/img/smiley/pizza.png', 'Pizza, pour en afficher saisir (pizza)');
|
||||
$liste_smiley[] = array(array('(film)', '(movie)', '~'), 'assets/img/smiley/movies.png', 'Film, pour en afficher saisir (film)');
|
||||
$liste_smiley[] = array('(*)', 'assets/img/smiley/star.png', 'Etoile, pour en afficher saisir (*)');
|
||||
$liste_smiley[] = array(array('(mp)', '(ph)'), 'assets/img/smiley/phone.png', 'Téléphone, pour en afficher saisir (mp)');
|
||||
$liste_smiley[] = array(array('(cash)', '(mo)', '($)'), 'assets/img/smiley/money_dollar.png', 'Cash, pour en afficher saisir (cash)');
|
||||
$liste_smiley[] = array(array('(apple)', '(pomme)'), 'assets/img/smiley/apple.png', 'Pomme, pour en afficher saisir (apple)');
|
||||
$liste_smiley[] = array(array('(bear)', '(hug)'), 'assets/img/smiley/teddy_bear.png', 'Ours, pour en afficher saisir (bear)');
|
||||
$liste_smiley[] = array(array('(e)', '(m)'), 'assets/img/smiley/email.png', 'Email, pour en afficher saisir (e)');
|
||||
$liste_smiley[] = array('(party)', 'assets/img/smiley/emotion_party.png', 'Fête, pour en afficher saisir (party)');
|
||||
$liste_smiley[] = array('(anchor)', 'assets/img/smiley/anchor.png', 'Ancre, pour en afficher saisir (anchor)');
|
||||
$liste_smiley[] = array('(android)', 'assets/img/smiley/android.png', 'Logo Android, pour en afficher saisir (android)');
|
||||
$liste_smiley[] = array('(attach)', 'assets/img/smiley/attach.png', 'Trombonne, pour en afficher saisir (attach)');
|
||||
$liste_smiley[] = array('(bell)', 'assets/img/smiley/bell.png', 'Cloche, pour en afficher saisir (bell)');
|
||||
$liste_smiley[] = array('(bus)', 'assets/img/smiley/bus.png', 'Bus, pour en afficher saisir (bus)');
|
||||
$liste_smiley[] = array('(camera)', 'assets/img/smiley/camera_black.png', 'Appareil Photo, pour en afficher saisir (camera)');
|
||||
$liste_smiley[] = array('(cd)', 'assets/img/smiley/cd.png', 'CD, pour en afficher saisir (cd)');
|
||||
$liste_smiley[] = array('(medaille)', 'assets/img/smiley/award_star_gold_green.png', 'Médaille, pour en afficher saisir (medaille)');
|
||||
$liste_smiley[] = array('(user)', 'assets/img/smiley/user.png', 'Personne, pour en afficher saisir (user)');
|
||||
$liste_smiley[] = array('(vlc)', 'assets/img/smiley/vlc.png', 'Logo de VLC, pour en afficher saisir (vlc)');
|
||||
$liste_smiley[] = array('(comunic)', 'assets/img/smiley/logo_comunic.png', 'Logo de Comunic, pour en afficher saisir (comunic)');
|
||||
$liste_smiley[] = array('(computer)', 'assets/img/smiley/computer.png', 'Ordinateur, pour en afficher saisir (computer)');
|
||||
$liste_smiley[] = array('(laptop)', 'assets/img/smiley/laptop.png', 'Ordinateur portable, pour en afficher saisir (laptop)');
|
||||
$liste_smiley[] = array('(book)', 'assets/img/smiley/book.png', 'Livre, pour en afficher saisir (book)');
|
||||
$liste_smiley[] = array('(book-open)', 'assets/img/smiley/book_open.png', 'Livre ouvert, pour en afficher saisir (book-open)');
|
||||
$liste_smiley[] = array('(map)', 'assets/img/smiley/map.png', 'Carte, pour en afficher saisir (map)');
|
||||
$liste_smiley[] = array('(tree)', 'assets/img/smiley/tree.png', 'Arbre, pour en afficher saisir (tree)');
|
||||
$liste_smiley[] = array('(tick)', 'assets/img/smiley/tick.png', 'V vert, pour en afficher saisir (tick)');
|
||||
$liste_smiley[] = array('(ubuntu)', 'assets/img/smiley/ubuntu.png', 'Logo de Ubuntu, pour en afficher saisir (ubuntu)');
|
||||
$liste_smiley[] = array('(micro)', 'assets/img/smiley/microphone.png', 'Micro, pour en afficher saisir (micro)');
|
||||
$liste_smiley[] = array('(king)', 'assets/img/smiley/user_king.png', 'Roi, pour en afficher saisir (king)');
|
||||
$liste_smiley[] = array('(beer)', 'assets/img/smiley/beer.png', 'Bière, pour en afficher saisir (beer)');
|
||||
$liste_smiley[] = array('(bomb)', 'assets/img/smiley/bomb.png', 'Bombe, pour en afficher saisir (bomb)');
|
||||
$liste_smiley[] = array('(w)', 'assets/img/smiley/what.png', 'Point interrogatif, pour en afficher saisir (w)');
|
||||
|
||||
//On affiche les drapeaux
|
||||
$liste_smiley[] = array('(flag: af)', 'assets/img/smiley/flag/flag_afghanistan.png', 'Drapeau Afghanistant, pour en afficher saisir (flag: af)');
|
||||
$liste_smiley[] = array('(flag: al)', 'assets/img/smiley/flag/flag_albania.png', 'Drapeau Albanien, pour en afficher saisir (flag: al)');
|
||||
$liste_smiley[] = array('(flag: dz)', 'assets/img/smiley/flag/flag_algeria.png', 'Drapeau Algérien, pour en afficher saisir (flag: dz)');
|
||||
$liste_smiley[] = array('(flag: as)', 'assets/img/smiley/flag/flag_american_samoa.png', 'Amérique Samoa, pour en afficher saisir (flag: as)');
|
||||
$liste_smiley[] = array('(flag: ad)', 'assets/img/smiley/flag/flag_andorra.png', 'Andorra, pour en afficher saisir (flag: ad)');
|
||||
$liste_smiley[] = array('(flag: br)', 'assets/img/smiley/flag/flag_brazil.png', 'Drapeau Brésilien, pour en afficher saisir (flag: br)');
|
||||
$liste_smiley[] = array('(flag: ca)', 'assets/img/smiley/flag/flag_canada.png', 'Drapeau Canadien, pour en afficher saisir (flag: ca)');
|
||||
$liste_smiley[] = array('(flag: cn)', 'assets/img/smiley/flag/flag_china.png', 'Drapeau Chinois, pour en afficher saisir (flag: cn)');
|
||||
$liste_smiley[] = array('(flag: fr)', 'assets/img/smiley/flag/flag_france.png', 'Drapeau Français, pour en afficher saisir (flag: fr)');
|
||||
$liste_smiley[] = array('(flag: ger)', 'assets/img/smiley/flag/flag_germany.png', 'Drapeau Allemand, pour en afficher saisir (flag: ger)');
|
||||
$liste_smiley[] = array('(flag: gb)', 'assets/img/smiley/flag/flag_great_britain.png', 'Drapeau de la Grande Bretagne, pour en afficher saisir (flag: gb)');
|
||||
$liste_smiley[] = array('(flag: gr)', 'assets/img/smiley/flag/flag_greece.png', 'Drapeau Grecque, pour en afficher saisir (flag: gr)');
|
||||
$liste_smiley[] = array('(flag: gy)', 'assets/img/smiley/flag/flag_guyana.png', 'Drapeau de la Guyanne, pour en afficher saisir (flag: gy)');
|
||||
$liste_smiley[] = array('(flag: it)', 'assets/img/smiley/flag/flag_italy.png', 'Drapeau italien, pour en afficher saisir (flag: it)');
|
||||
$liste_smiley[] = array('(flag: jp)', 'assets/img/smiley/flag/flag_japan.png', 'Drapeau japonais, pour en afficher saisir (flag: jp)');
|
||||
$liste_smiley[] = array('(flag: sd)', 'assets/img/smiley/flag/flag_sweden.png', 'Drapeau de la Suède, pour en afficher saisir (flag: sd)');
|
||||
$liste_smiley[] = array('(flag: tun)', 'assets/img/smiley/flag/flag_tunisia.png', 'Drapeau de la Tunisie, pour en afficher saisir (flag: tun)');
|
||||
$liste_smiley[] = array('(flag: tur)', 'assets/img/smiley/flag/flag_turkey.png', 'Drapeau de la Turkie, pour en afficher saisir (flag: tur)');
|
||||
$liste_smiley[] = array('(flag: us)', 'assets/img/smiley/flag/flag_usa.png', 'Drapeau Américain, pour en afficher saisir (flag: us)');
|
6
inc/load.html
Executable file
6
inc/load.html
Executable file
@ -0,0 +1,6 @@
|
||||
<p>Comunic</p>
|
||||
<p style="left: 45%; top: 0px; width: auto; position: fixed; z-index: 1; border: 1px black solid; background-color: blue;"><span style="color: #ffffff;">Veuillez patienter, chargement en cours...</span></p>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
<script>
|
||||
document.location.href="index.php?metro_loaded";
|
||||
</script>
|
20
inc/loading.html
Executable file
20
inc/loading.html
Executable file
@ -0,0 +1,20 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Chargement en cours...</title>
|
||||
<meta http-equiv='Content-Type' content='text/html; charset=us-ascii'>
|
||||
<style>
|
||||
.chargement {
|
||||
position: relative;
|
||||
top: 50px;
|
||||
margin: auto;
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="chargement">
|
||||
<img src="img/chargement.gif" />
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
51
inc/logout_with_roundcube.html
Executable file
51
inc/logout_with_roundcube.html
Executable file
@ -0,0 +1,51 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Aller à la page d'acceuil</title>
|
||||
<style type="text/css">
|
||||
body {
|
||||
font-family: Arial;
|
||||
background-color: rgba(68, 116, 231, 0.7);
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a div {
|
||||
color: #FFFFFF;
|
||||
margin: auto;
|
||||
font-size: 170%;
|
||||
width: 170px;
|
||||
text-align: center;
|
||||
padding: 20px;
|
||||
margin-top: 150px;
|
||||
border: 3px rgba(68, 116, 231, 0.8) solid;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
a div:hover {
|
||||
background-color: rgba(68, 116, 231, 0.6);
|
||||
}
|
||||
|
||||
a div:active {
|
||||
background-color: rgba(68, 116, 231, 1);
|
||||
}
|
||||
|
||||
p {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
iframe {
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<p>Cette page est apparue afin de permettre l'éventuelle déconnexion du Webmail.</p>
|
||||
<a href="%TARGET_REDIRECT%" target="_parent"><div>Page d'acceuil</div></a>
|
||||
<meta http-equiv="refresh" content="10;URL=%TARGET_REDIRECT%">
|
||||
<iframe src="roundcube/?_task=logout"></iframe>
|
||||
</body>
|
||||
</html>
|
12
inc/manage_flux.html
Executable file
12
inc/manage_flux.html
Executable file
@ -0,0 +1,12 @@
|
||||
<!-- Gestion des flux réseaux réguliers (tel que les notifications ou la liste d'amis) -->
|
||||
<script>
|
||||
//Permet d'activer ou de désactiver les flux de notification
|
||||
//Veuillez noter qu'il est recommandé de désactiver les flux lors de l'enregistrement d'une page web pour un fonctionnement local.
|
||||
//Cette action n'a aucune incidence sur les contenus de la page, mais l'utilisateur ne peut être informé en live des nouveautés lorsque celle-ci est activée.
|
||||
|
||||
//true : Permet l'actualisation en live des notifications et consort
|
||||
//false : Bloque les flux live excepté le chat privé (Recommandé pour une utilisation hors ligne de la page)
|
||||
|
||||
autoriser_flux_streaming_live = true; //Activé (true) par défaut pour permettre une meilleure expérience utilisateur.
|
||||
</script>
|
||||
<!--Fin de la gestion des flux réseaux réguliers -->
|
16
inc/menu_contextuel.php
Executable file
16
inc/menu_contextuel.php
Executable file
@ -0,0 +1,16 @@
|
||||
|
||||
<div id="ie5menu" class="menuclickdroit" onmouseover="highlightie5(event,'#663300','#FFFFFF');" onmouseout="lowlightie5(event,'','#000000');" onclick="jumptoie5(event);" style="display:block; visibility:hidden;">
|
||||
<div id="menuitemsJSTop" style="display:none;"></div>
|
||||
<div class="menuitems" onclick="alert('Afin de copier du texte, veuillez pressez simultanénement les touches Ctrl et C de votre clavier.');" title="Copier du texte">Copier</div>
|
||||
<div class="menuitems" onclick="alert('Afin de coller du texte, veuillez pressez simultanénement les touches Ctrl et V de votre clavier.');" title="Coller du texte">Coller</div>
|
||||
<div class="menuitems" onclick="alert('Afin de couper du texte, veuillez pressez simultanénement les touches Ctrl et X de votre clavier.');" title="Couper du texte">Couper</div>
|
||||
<hr/>
|
||||
<div class="menuitems" onclick="window.location='index.php';" title="Votre page">Page d'acceuil</div>
|
||||
<div class="menuitems" onclick="history.back();" title="Page précédente">Précédent</div>
|
||||
<div class="menuitems" onclick="history.forward();" title="Page suivante">Suivant</div>
|
||||
<div id="menuitemsJSBottom" style="display:none;"></div>
|
||||
</div>
|
||||
<script language="javascript" type="text/javascript">
|
||||
if (MCie5||MCns6) menuobj=document.getElementById("ie5menu"); /* Détermine le menu de départ */
|
||||
MCenable=true;
|
||||
</script>
|
14
inc/message_fil_vu.php
Executable file
14
inc/message_fil_vu.php
Executable file
@ -0,0 +1,14 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Invalid Request.");
|
||||
if(!isset($message_fil_vu))
|
||||
die("404 File not found.");
|
||||
|
||||
//Récupération des informations sur l'utilisateur
|
||||
$infos_user = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
|
||||
//Modification dans la base de données
|
||||
update_sql("utilisateurs", "vu_message_info_fil = 1", "ID = ?", $bdd, array($_SESSION['ID']));
|
||||
echo "Succes";
|
||||
|
30
inc/message_update.html
Executable file
30
inc/message_update.html
Executable file
@ -0,0 +1,30 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Mise à jour de Comunic en cours...</title>
|
||||
|
||||
<!-- Styles de la page -->
|
||||
<style type="text/css">
|
||||
body {
|
||||
background-color: #C0C0C0;
|
||||
}
|
||||
|
||||
.message {
|
||||
background-color: white;
|
||||
width: 750px;
|
||||
margin: auto;
|
||||
margin-top: 10%;
|
||||
padding: 60px;
|
||||
font-size: 150%;
|
||||
font-family: Arial;
|
||||
}
|
||||
</style>
|
||||
<!-- Fin de: Styles de la page -->
|
||||
</head>
|
||||
<body>
|
||||
<div class="message">
|
||||
Comunic a été temporairement bloqué en raison de mises à jour. <br/>
|
||||
Vous pouvez revenir sur ce site ultérieurement ou bien <a href="%URL_SITE%"> réessayer dès maintenant.<br />
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
55
inc/nettoyage_automatique_notifications.php
Executable file
55
inc/nettoyage_automatique_notifications.php
Executable file
@ -0,0 +1,55 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Login required!");
|
||||
|
||||
//On vérifie si il faut changer les paramètres
|
||||
if(isset($_POST['mois_nettoyage_automatique_notifications']) AND isset($_POST['jour_nettoyage_automatique_notifications']) AND isset($_POST['heure_nettoyage_automatique_notifications']))
|
||||
{
|
||||
//On vérifie si il faut activer ou non le système
|
||||
$activer_systeme = (isset($_POST['nettoyage_automatique_notifications']) ? 1 : 0);
|
||||
|
||||
//On contrôle les valeurs données
|
||||
//Préparation des données
|
||||
$mois_nettoyage = $_POST['mois_nettoyage_automatique_notifications']*1;
|
||||
$jour_nettoyage = $_POST['jour_nettoyage_automatique_notifications']*1;
|
||||
$heure_nettoyage = $_POST['heure_nettoyage_automatique_notifications']*1;
|
||||
|
||||
//Vérification des valeurs
|
||||
if(($mois_nettoyage > -1 AND $mois_nettoyage <= 12) AND ($jour_nettoyage > -1 AND $jour_nettoyage <= 31) AND ($heure_nettoyage > -1 AND $heure_nettoyage <= 24))
|
||||
{
|
||||
//On peut mettre à jour la base de données
|
||||
$sql = "UPDATE utilisateurs SET nettoyage_automatique_notifications = ?, mois_nettoyage_automatique_notifications = ?, jour_nettoyage_automatique_notifications = ?, heure_nettoyage_automatique_notifications = ? WHERE ID = ?";
|
||||
|
||||
//Exécution de la requête
|
||||
$update = $bdd->prepare($sql);
|
||||
$update->execute(array($activer_systeme, $mois_nettoyage, $jour_nettoyage, $heure_nettoyage, $_SESSION['ID']));
|
||||
|
||||
//Rechargement des informations
|
||||
$afficher = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
|
||||
//Affichage d'un message de succès
|
||||
?><script type="text/javascript">affiche_notification_succes("Les paramètres de suppression des anciennes notifications ont été mis à jour.", "", 5);</script><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
//Message d'erreur
|
||||
?><script type="text/javascript">affiche_notification_erreur("Les valeurs saisies pour la suppression automatique des anciennes notifications sont incorrectes.", "Erreur", 5);</script><?php
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?><div class="nettoyage_automatique_notifications">
|
||||
<p><b>Nettoyage automatique des notifications :</b></p>
|
||||
<form action="parametres.php?c=<?php echo $_GET['c']; ?>" method="post">
|
||||
<label><input type='checkbox' name='nettoyage_automatique_notifications' <?php if($afficher['nettoyage_automatique_notifications'] == 1) echo 'checked'; ?> /> Activer le nettoyage automatique des anciennes notifications </label>
|
||||
<p>Supprimer automatiquement les notifications ayant plus de ...</p>
|
||||
<p>
|
||||
<input type="text" size="2" required maxlength="2" value="<?php echo $afficher['mois_nettoyage_automatique_notifications']; ?>" name="mois_nettoyage_automatique_notifications" /> mois(s),
|
||||
<input type="text" size="2" required maxlength="2" value="<?php echo $afficher['jour_nettoyage_automatique_notifications']; ?>" name="jour_nettoyage_automatique_notifications" /> jour(s) et
|
||||
<input type="text" size="2" required maxlength="2" value="<?php echo $afficher['heure_nettoyage_automatique_notifications']; ?>" name="heure_nettoyage_automatique_notifications" /> heure(s)
|
||||
</p>
|
||||
<p><input type="submit" value="Enregistrer les modifications" />
|
||||
<p>Note : Suivant les paramètres que vous avez choisi les anciennes notifications seront supprimées lors de votre connexion au service.</p>
|
||||
</form>
|
||||
</div>
|
60
inc/ouvre_ferme_session_chat.php
Executable file
60
inc/ouvre_ferme_session_chat.php
Executable file
@ -0,0 +1,60 @@
|
||||
<?php
|
||||
//Sécurité
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Invalid Request.");
|
||||
if(!isset($ouvre_ferme_session_chat))
|
||||
die("404 File not found.");
|
||||
|
||||
//Vérification de l'existence des variables
|
||||
if(!isset($_GET['id']))
|
||||
die("Missing arguments.");
|
||||
|
||||
//On crèe la variable liste si nécessaire
|
||||
if(!isset($_SESSION['private_chat'][$_SESSION['ID']]))
|
||||
{
|
||||
//Création des variables
|
||||
$_SESSION['private_chat'] = array();
|
||||
$_SESSION['private_chat'][$_SESSION['ID']] = array();
|
||||
}
|
||||
|
||||
//Préparation de la mise à jour
|
||||
$id = $_GET['id']*1;
|
||||
|
||||
//On détermine si il faut ajouter ou supprimer la conversation
|
||||
if(isset($_SESSION['private_chat'][$_SESSION['ID']][$id]))
|
||||
{
|
||||
//On supprime la conversation si demandé
|
||||
if(isset($_GET['remove']))
|
||||
{
|
||||
unset($_SESSION['private_chat'][$_SESSION['ID']][$id]);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Rien à faire
|
||||
die("Nothing to be done.");
|
||||
}
|
||||
}
|
||||
//Dans ce cas il faut ajouter la conversation
|
||||
else
|
||||
{
|
||||
//Si une session temporaire d'affichage de conversations existe, il faut la fermer
|
||||
if(isset($_SESSION['private_chat'][$_SESSION['ID']][0]))
|
||||
unset($_SESSION['private_chat'][$_SESSION['ID']][0]);
|
||||
|
||||
//Vérification de l'existence du compte
|
||||
if(!isset_account($id, $bdd) && $id != 0)
|
||||
die("Erreur: Le compte demandé n'existe pas !");
|
||||
else
|
||||
{
|
||||
//On ajoute la conversation à la liste
|
||||
//Vérification de l'existence du compte
|
||||
$_SESSION['private_chat'][$_SESSION['ID']][$id] = 1;
|
||||
|
||||
//Si demandé, on effectue une redirection vers la conversation demandée
|
||||
if(isset($_GET['autoredirect']))
|
||||
header('Location: '.$urlsite.'privatechat.php?id='.$id);
|
||||
}
|
||||
}
|
||||
|
||||
//Message de succès
|
||||
echo "OK. ".$id;
|
107
inc/pages/about/about.php
Executable file
107
inc/pages/about/about.php
Executable file
@ -0,0 +1,107 @@
|
||||
<?php
|
||||
/**
|
||||
* About the project page
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit("Invalid call - ".$_SERVER['PHP_SELF']);
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html id="<?php echo (isset($_GET['cgu']) ? "" :"about"); ?>">
|
||||
<head>
|
||||
<title>A propos</title>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
</head>
|
||||
<body class="metro">
|
||||
<?php include(pagesRelativePath('common/pageTop.php'));
|
||||
|
||||
if(!isset($_GET['cgu']))
|
||||
{
|
||||
?><h1 class='titre'>A propos</h1>
|
||||
<div class="contener_main">
|
||||
<div class="logo_contener">
|
||||
<?php echo code_inc_img(path_img_asset('logo_comunic.png'), "Logo de Comunic"); ?>
|
||||
</div>
|
||||
<div class="text_content">Comunic a été conçu par Pierre Hubert.</div>
|
||||
<div class="text_content">Remerciement pour leurs précieux conseil à Tristan Thévenin, Florent Wang et Samir Bertache.</div>
|
||||
<div class="text_content">Tous droits réservés. 2013-2016</div>
|
||||
</div>
|
||||
|
||||
<div class="contener_infos">
|
||||
<h2>Informez-vous</h2>
|
||||
<!-- CGU Link -->
|
||||
<div class="big_link">
|
||||
<a href='<?php echo siteURL('about.php'); ?>?cgu'>
|
||||
<?php echo code_inc_img(path_img_asset('text_list_numbers.png')); ?>
|
||||
Lisez les conditions d'utilisation
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- Privacy Link -->
|
||||
<div class="big_link">
|
||||
<a href="<?php echo siteURL('about.php'); ?>?cgu&privacy">
|
||||
<?php echo code_inc_img(path_img_asset('lock.png')); ?>
|
||||
Politique de confidentialité et d'utilisation des données
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p style="text-align: center;">
|
||||
Informations relatives à certaines extensions :
|
||||
</p>
|
||||
|
||||
<!-- Let's Encrypt -->
|
||||
<p style="text-align: center;">
|
||||
Un grand merci à Let's Encrypt grâce à qui notre site peut fonctionner en HTTPS...
|
||||
</p>
|
||||
|
||||
<!-- Metro UI CSS -->
|
||||
<p style="text-align: center;">
|
||||
Sans <a href="http://metroui.org.ua/" target='_blank'>Metro UI CSS</a>, notre site n'aurait pas une telle interface...
|
||||
</p>
|
||||
|
||||
<!-- Webcam - WebRTC -->
|
||||
<p style="text-align: center;">
|
||||
<i>Certains composants de gestion de la webcam sont issues de <a href='http://www.webrtc.org/' target="_blank">WebRTC</a> dont la licence est disponible <a href="<?php echo path_assets('legal/LICENSE_webrtc.txt'); ?>" target="_blank"> ici </a>.</i>
|
||||
</p>
|
||||
|
||||
<!-- Fatcow -->
|
||||
<p style="text-align: center;">Certaines images de ce site sont issues de Fatcow: <br />
|
||||
© Copyright 2009-2014 FatCow Web Hosting. All rights reserved.<br />
|
||||
<a href='http://www.fatcow.com' target='_blank'>http://www.fatcow.com</a><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
?><div class="container_cgu">
|
||||
<?php
|
||||
//Preparing licence
|
||||
if(!isset($_GET['privacy']))
|
||||
{
|
||||
//The subject are the CGU
|
||||
$name = "Conditions d'utilisation de Comunic";
|
||||
$path = path_assets('legal/cgu.html');
|
||||
$licence = file_get_contents(relativePath_assets('legal/cgu.html'));
|
||||
}
|
||||
else
|
||||
{
|
||||
//The subject is the privacy policy
|
||||
$name = "Politique de gestion et d'utilisation des données";
|
||||
$path = path_assets('legal/privacy.html');
|
||||
$licence = file_get_contents(relativePath_assets('legal/privacy.html'));
|
||||
}
|
||||
|
||||
//Showing licence
|
||||
?><h2 class='titre'><?php echo $name; ?></h2>
|
||||
<div class="cgu"><?php echo $licence; ?></div>
|
||||
<a href="<?php echo $path; ?>" target="_blank">Fichier HTML</a><?php
|
||||
|
||||
?></div><?php
|
||||
}
|
||||
|
||||
//Bottom inclusion
|
||||
?><hr><?php
|
||||
include(pagesRelativePath('common/pageBottom.php'));
|
||||
?></body>
|
||||
</html>
|
196
inc/pages/common/head.php
Executable file
196
inc/pages/common/head.php
Executable file
@ -0,0 +1,196 @@
|
||||
<?php
|
||||
|
||||
//Initialisation de la langue
|
||||
$lang = detecteinstallelangue();
|
||||
|
||||
//R<>cup<75>ration du nom de fichier
|
||||
$nom_fichier = substr(strrchr($_SERVER['PHP_SELF'], "/"), 1);
|
||||
//$nom_fichier_cache = "cache/".sha1("header.php of ".$nom_fichier);
|
||||
|
||||
//Inclusion de la liste des descriptions
|
||||
include(websiteRelativePath().'inc/liste_descriptions.php');
|
||||
?>
|
||||
<!-- Informations d'en-t<>te -->
|
||||
<!--<meta http-equiv='Content-Type' content='text/html; charset=us-ascii'>-->
|
||||
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
|
||||
<meta name="description" content="<?php
|
||||
if(isset($liste_descriptions[$nom_fichier]))
|
||||
echo $liste_descriptions[$nom_fichier];
|
||||
else
|
||||
echo $liste_descriptions["default"];
|
||||
?>">
|
||||
<meta name="abstract" content="Comunic est un réseau social qui permet de communiquer gratuitement entre amis tout en respectant la vie privée.">
|
||||
<meta name="keywords" content="réseau social, chat, pages personnelles, amis, comuniquer, vie privée, accessibilité, vidéos personnelles, compte, gratuit, moderne">
|
||||
<meta name="author" content="Pierre Hubert">
|
||||
<meta name="revisit-after" content="15">
|
||||
<meta name="language" content="FR">
|
||||
<meta name="copyright" content="2013 - 2016 Comunic">
|
||||
<meta name="robots" content="All">
|
||||
<!-- Fin de: Informations d'en-t<>te -->
|
||||
|
||||
<?php
|
||||
//Autoriser ou non les flux r<>seaux
|
||||
include(websiteRelativePath().'inc/manage_flux.html');
|
||||
?>
|
||||
|
||||
<!-- Proposition de Comunic en tant que moteur de recherche -->
|
||||
<link rel="search" type="application/opensearchdescription+xml" title="Comunic" href="<?php echo $urlsite; ?>action.php?actionid=33" />
|
||||
<!-- Fin de: Proposition de Comunic en tant que moteur de recherche -->
|
||||
|
||||
<!-- Appel n<>cessaire au Responsive -->
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Calling CSS files
|
||||
*/
|
||||
|
||||
//Main CSS file
|
||||
echo code_inc_css(path_css_asset('global.php/'.$last_update_website));
|
||||
|
||||
//Opened page or login required
|
||||
if(isset($_SESSION['ID']) || isset($not_home_login_page))
|
||||
{
|
||||
// Video-js
|
||||
echo code_inc_css(url_3rdparty('video_js/video-js.css'));
|
||||
|
||||
// Login required
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
// Notifications
|
||||
echo code_inc_css(path_css_asset('global_notifications.css'));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* JS config
|
||||
*/
|
||||
?><script type="text/javascript">
|
||||
var config = [];
|
||||
config['pathAssets'] = "<?php echo path_assets(); ?>";
|
||||
</script><?php
|
||||
|
||||
/**
|
||||
* Calling JS files
|
||||
*/
|
||||
|
||||
// Main JS file
|
||||
echo code_inc_js(path_js_asset('global.php/'.$last_update_website));
|
||||
|
||||
// Smiley
|
||||
echo code_inc_js(path_js_asset('liste_smile.js'));
|
||||
|
||||
|
||||
// Opened page or login required
|
||||
if(isset($_SESSION['ID']) || isset($not_home_login_page))
|
||||
{
|
||||
// Jquery MouseWheel
|
||||
echo code_inc_js(path_js_asset('jquery/jquery.mousewheel.js'));
|
||||
|
||||
//Jquery Fancybox
|
||||
echo code_inc_js(url_3rdparty('fancyapps/source/jquery.fancybox.js'));
|
||||
echo code_inc_js(path_js_asset('initialise_fancybox.js'));
|
||||
|
||||
// VideoJS
|
||||
echo code_inc_js(url_3rdparty('video_js/video.js'));
|
||||
echo "<script type='text/javascript'>videojs.options.flash.swf = \"".$urlsite."video_js/video-js.swf\";</script>";
|
||||
|
||||
// Login required
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//Liste des groupes
|
||||
echo code_inc_js($urlsite.'r.php/js/liste_groupes.js');
|
||||
|
||||
// Gestion du choix de groupes
|
||||
echo code_inc_js(path_js_asset('groupes.js'));
|
||||
|
||||
// Tiny MCE
|
||||
echo code_inc_js(path_js_asset('tiny_mce/tiny_mce.js'));
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Piwik, if allowed
|
||||
*/
|
||||
if($enable_piwik == 1 AND (!isset($_SESSION['block_piwik'])))
|
||||
include('inc/gestion_piwik.php');
|
||||
|
||||
/**
|
||||
* Personalisez source
|
||||
*/
|
||||
echo $complementsource;
|
||||
|
||||
?>
|
||||
<!-- Icone du site -->
|
||||
<link rel="icon" type="image/vnd.microsoft.icon" href="<?php echo path_img_asset('favicon.ico'); ?>" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="<?php echo path_img_asset('favicon.ico'); ?>" />
|
||||
<!-- Fin de: Icone du site -->
|
||||
|
||||
<!-- Feuilles de style CSS -->
|
||||
<?php
|
||||
//Compatibilit<69> de Internet Explorer
|
||||
if(isset($_SERVER['HTTP_USER_AGENT']))
|
||||
{
|
||||
if(preg_match("/MSIE/", $_SERVER['HTTP_USER_AGENT']) || isset($_SESSION['compatible']))
|
||||
{
|
||||
?><!-- Compatibilt<6C> du navigateur -->
|
||||
<link rel="stylesheet" href="<?php echo $urlsite; ?>css/ie.css">
|
||||
<!-- Script javascript associ<63> -->
|
||||
<script type="text/javascript">
|
||||
function MM_jumpMenu(targ,selObj,restore){ //v3.0
|
||||
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
|
||||
if (restore) selObj.selectedIndex=0;
|
||||
}
|
||||
</script>
|
||||
<!-- Fin de: Compatibilit<69> du navigateur --><?php
|
||||
}
|
||||
}
|
||||
?>
|
||||
<!-- Fin de: Feuilles de style CSS -->
|
||||
|
||||
|
||||
<?php
|
||||
//On enregistre l'activit<69> de l'utilisateur uniquement si ce dernier est connect<63>
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//On enregistre l'activit<69>
|
||||
update_last_activity($_SESSION['ID'], $bdd);
|
||||
|
||||
//On d<>finit une routine pour un trackage r<>gulier
|
||||
?><script type="text/javascript">
|
||||
//Inutile, le fichier amis.php suffit
|
||||
//var last_activity=setInterval("ajax_rapide('about.php?withbreak')", 30000); // r<>p<EFBFBD>te toutes les 30s
|
||||
</script><?php
|
||||
|
||||
//On quitte le script courrant si c'<27>tait une demande de trackage d'activit<69>
|
||||
if(isset($_GET['withbreak']))
|
||||
{
|
||||
//Fermeture du script
|
||||
die();
|
||||
}
|
||||
}
|
||||
|
||||
//On charge les notifications de l'utilisateur uniquement si ce dernier est connect<63>
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
$info = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
|
||||
if($info['bloquenotification'] == 0)
|
||||
{
|
||||
//On affiche les scripts JAVASCRIPT
|
||||
?><span id="son_notification_area"></span><script type="text/javascript">//Timer pour actualiser toute les 2 secondes les notifications
|
||||
<?php echo ($info['bloque_son_notification'] == "0" ? 'prepare_joue_son("'.$urlsite.'audio/notification.ogg", "'.$urlsite.'audio/notification.mp3", "son_notification");' : ''); ?>//Pr<50>pare le son
|
||||
var last_notifications_timer=setInterval("getpopupnotification('notification.php?rapide')", 3000); // r<>p<EFBFBD>te toutes les 3s
|
||||
</script><?php
|
||||
}
|
||||
|
||||
//On affiche le menu clique droit uniquement si l'utilisateur est connect<63> et que la capture du clic droit est activ<69>e
|
||||
if($bloque_clic_droit == "oui")
|
||||
{
|
||||
//Inclusion du menu clique droit
|
||||
include('inc/menu_contextuel.php');
|
||||
}
|
||||
}
|
||||
?>
|
163
inc/pages/common/menu.php
Executable file
163
inc/pages/common/menu.php
Executable file
@ -0,0 +1,163 @@
|
||||
<?php
|
||||
/**
|
||||
* Website menu
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if($afficher['old_menu'] == 0 AND !isset($menu_light))
|
||||
{
|
||||
//Nouvelle version du menu
|
||||
?><font class="metro">
|
||||
<div class="navigation-bar <?php echo $afficher['color_menu']; ?> new_navbar">
|
||||
<div class="navbar-content">
|
||||
|
||||
<!-- Home link -->
|
||||
<a href="<?php echo $urlsite; ?>index.php" id="titre_site_nom" class="element">COMUNIC</a>
|
||||
<a href="<?php echo $urlsite; ?>index.php" id="titre_site_lettre" class="element">C</a>
|
||||
|
||||
<!-- Two dividers -->
|
||||
<span class="element-divider"></span>
|
||||
<span class="element-divider"></span>
|
||||
|
||||
<!-- Notifications button -->
|
||||
<a class="element brand" title="Afficher les notifications" onClick="affiche_notifications()">
|
||||
<span class="button_moderne_menu" id="notification_area">
|
||||
<span class="icon-newspaper"></span>
|
||||
</span>
|
||||
<span id="nb_notification_area"></span>
|
||||
<script>setInterval('verifie_notifications_non_vues("<?php echo $urlsite; ?>");', 3000);</script>
|
||||
</a>
|
||||
|
||||
<!-- Private chat button -->
|
||||
<a class="element brand" title="Ouvrir le chat priv&eacut;" id="button_private_chat" onClick="affiche_chat_prive(0);">
|
||||
<span class="button_moderne_menu">
|
||||
<span class="icon-comments-4"></span>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<!-- Fil button -->
|
||||
<a class="element brand" id="button_view_fil" onClick="open_page_ameliore(0)">
|
||||
<span class="button_moderne_menu">
|
||||
<span class="icon-history"></span>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<!-- New message button -->
|
||||
<span id="new_message"></span><script>verifie_messages_non_lus(1);</script>
|
||||
|
||||
<!-- New friends button -->
|
||||
<span id="new_friend"></span><script>verifie_messages_non_lus(2);</script>
|
||||
|
||||
<!-- Update alert information -->
|
||||
<?php if(isset($alert_last_update)) echo $alert_last_update ?>
|
||||
|
||||
<!-- Divider -->
|
||||
<span class="element-divider"></span>
|
||||
|
||||
<!-- Search someone -->
|
||||
<div class="element input-element recherche_menu">
|
||||
<div class="input-control text">
|
||||
<form action="<?php echo $urlsite; ?>recherche.php" method="post">
|
||||
<input placeholder="Recherche..." type="text" id="search_user_input" name="nom" autocomplete="off" onkeyup="search_user_ajax();">
|
||||
<button class="btn-search" type="submit"></button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div id="result_search"></div>
|
||||
<div id="list_results"></div>
|
||||
|
||||
<div class="element place-right">
|
||||
<a class="dropdown-toggle" href="#">
|
||||
<span class="icon-cog"></span>
|
||||
</a>
|
||||
<ul class="dropdown-menu place-right <?php echo ($afficher['color_menu'] == "light" ? "inverse" : $afficher['color_menu']); ?>" data-role="dropdown">
|
||||
<li><a href="<?php echo $urlsite; ?>amis.php"><i class="icon-list"></i> Vos Amis</a></li>
|
||||
<li><a href="<?php echo $urlsite; ?>messagerie.php"><i class="icon-mail"></i> Messagerie interne</a></li>
|
||||
<!--<li><a href="<?php echo $urlsite; ?>webmail.php"><i class="icon-mail"></i> Webmail</a></li>-->
|
||||
<li><a href="<?php echo $urlsite; ?>galerie_videos.php"><i class="icon-film"></i> Galerie de vidéos</a></li>
|
||||
<li><a href="<?php echo $urlsite; ?>parametres.php"><i class="icon-tools"></i> Vos paramètres</a></li>
|
||||
|
||||
<!-- Multi-authentification -->
|
||||
<?php
|
||||
//On vérifie si $_SESSION['ID_parent'] existe
|
||||
if(!isset($_SESSION['ID_parent']))
|
||||
$_SESSION['ID_parent'] = $_SESSION['ID'];
|
||||
|
||||
if(count_sql("multi_login", "ID_personne = ?", $bdd, array($_SESSION['ID_parent'])) != 0)
|
||||
{
|
||||
?><li><a href="<?php echo $urlsite; ?>parametres.php?c=multi_login"><i class="icon-key"></i> Multi-authentification</a></li><?php
|
||||
}
|
||||
|
||||
if($_SESSION['ID_parent'] != $_SESSION['ID'])
|
||||
{
|
||||
?><li><a href="<?php echo $urlsite; ?>parametres.php?c=multi_login&back_main_account"><i class="icon-key"></i> Compte parent</a></li><?php
|
||||
}
|
||||
?>
|
||||
|
||||
<!-- End of: multi-authentification -->
|
||||
|
||||
|
||||
<li><a href="<?php echo $urlsite; ?>deconnexion.php"><i class="icon-switch"></i> Déconnexion</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a onClick="affiche_panneau_amis()">Afficher le panneau des amis</a></li>
|
||||
|
||||
</ul>
|
||||
<a> </a>
|
||||
</div>
|
||||
|
||||
<span class="element-divider place-right"></span><!-- Séparateur -->
|
||||
|
||||
|
||||
<button class="element image-button image-left place-right retour_page_user" onClick="open_page_ameliore(<?php echo $_SESSION['ID']; ?>);">
|
||||
<?php echo $afficher['prenom']." ".$afficher['nom']; ?>
|
||||
<?php echo avatar($_SESSION['ID'], './'); ?>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
</div></font>
|
||||
<div class="correctifnouvbarre"> </div>
|
||||
<div id="new_notification">
|
||||
<div class='new_iframenotification notifications_contener' id='new_iframenotification'>
|
||||
<div class="chargement">
|
||||
<?php echo code_inc_img(path_img_asset('chargement.gif'), "Veuillez patienter, chargement en cours..."); ?>
|
||||
</div>
|
||||
</div>
|
||||
<div id="new_notification_close">
|
||||
<input type="button" value="Fermer" onClick='MM_showHideLayers("new_notification", "", "hide");' />
|
||||
</div>
|
||||
<div id="new_notification_refresh">
|
||||
<?php
|
||||
echo code_inc_img(path_img_asset('small/date_delete.png'), "Supprimer les anciennes notifications", "", "", "", "delete_old_notifications();");
|
||||
echo " ".code_inc_img(path_img_asset('small/bin_closed.png'), "Supprimer toute les notifications", "", "", "", "supprime_toute_les_notifications();");
|
||||
echo " ".code_inc_img(path_img_asset('refresh.png'), "Actualiser les notifications", "", "", "", "affiche_notifications();"); ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
elseif(isset($menu_light))
|
||||
{
|
||||
?><font class="metro">
|
||||
<div class="navigation-bar <?php echo $afficher['color_menu']; ?>" style="position: fixed">
|
||||
<div class="navbar-content">
|
||||
<a href="<?php echo $urlsite; ?>index.php" target="_blank" class="element">COMUNIC</a>
|
||||
<span class="element-divider"></span>
|
||||
|
||||
<!-- Logout button -->
|
||||
<a href="deconnexion.php" class="element place-right" >
|
||||
Déconnexion
|
||||
</a>
|
||||
<!-- End of: Logout button -->
|
||||
</div>
|
||||
</div>
|
||||
</div></font>
|
||||
<div class="correctifnouvbarre"> </div><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<p>The required menu couldn't be found !</p>";
|
||||
|
||||
|
||||
//Fatal error : required menu not found
|
||||
report_error("Required menu not found", $raison = "Required menu not found in menu.php.");
|
||||
}
|
46
inc/pages/common/pageBottom.php
Executable file
46
inc/pages/common/pageBottom.php
Executable file
@ -0,0 +1,46 @@
|
||||
<!-- Pied de page -->
|
||||
<div class='bottom'>
|
||||
<!--<a href='index.php?lang=fr'>Français</a>
|
||||
<a href='index.php?lang=en'>English</a>-->
|
||||
<a href='<?php echo $urlsite; ?>about.php'><?php echo $lang[9]; ?></a>
|
||||
<a href='<?php echo $urlsite; ?>aide.php'><?php echo $lang[10]; ?></a>
|
||||
<a href="<?php echo $urlsite; ?>contact.php">Contact</a>
|
||||
<!--<a href='pagepublique.php'><?php echo $lang[11]; ?></a>-->
|
||||
<a href='<?php echo $urlsite; ?>recherche.php'>Recherche</a>
|
||||
<a href='<?php echo $urlsite; ?>tools' target="_blank">Outils</a>
|
||||
<a href='<?php echo $urlsite; ?>index.php?id=<?php echo $ID_official_page; ?>'>Page officielle</a>
|
||||
<a href='<?php echo $urlsite; ?>index.php?id=<?php echo $ID_actuality_page; ?>'>Actualité monde</a>
|
||||
<a href='<?php echo $urlsite; ?>whatiscomunic.php'>Qu'est-ce que Comunic ?</a>
|
||||
<a href='<?php echo $urlsite; ?>developer/'>Developer</a>
|
||||
<a href="forum.php">Améliorations</a>
|
||||
</div>
|
||||
<!--<div class="metions_legales">
|
||||
Une production de Pierre HUBERT <br />
|
||||
© Comunic, 2013, 2016
|
||||
</div>-->
|
||||
<!-- Fin de: pied page -->
|
||||
<?php
|
||||
//Si l'utilisateur est connect<63>, on inclus le chat publique ou chat priv<69>
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//V<>rification de l'activation du chat publique
|
||||
if($activer_publique_chat == "oui")
|
||||
{
|
||||
//Inclusion du chat
|
||||
include(websiteRelativePath().'chat.php');
|
||||
}
|
||||
|
||||
//Inclusion du fichier du chat priv<69>
|
||||
include(websiteRelativePath().'inc/private_chat.php');
|
||||
}
|
||||
|
||||
//On v<>rifie si l'utilisateur est au courant que des cookies sont enregitr<74>s lors de sa visite (inutile pour le moment)
|
||||
if(!isset($_COOKIE['ok_message_cookie']) AND false)
|
||||
{
|
||||
?><div class="metro"><?php
|
||||
?><p class="bg-lighterBlue padding20 fg-white info_cookies" id="info_cookies"><?php
|
||||
?>Lors de votre navigation sur ce site quelques cookies sont enregistrés. <a href="#">Cliquez ici</a> pour obtenir plus d'informations. <input type="button" value="OK" onClick="ajax_rapide('action.php?actionid=30'); show_hide_id('info_cookies', 'hidden');" /><?php
|
||||
?></p><?php
|
||||
?></div><?php
|
||||
}
|
||||
?>
|
150
inc/pages/common/pageTop.php
Executable file
150
inc/pages/common/pageTop.php
Executable file
@ -0,0 +1,150 @@
|
||||
<?php
|
||||
/**
|
||||
* Top menu of the website's page and common contents to all website
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
//On d<>termine si il faut afficher un message d'alerte relatif <20> une mise <20> jour r<>cente
|
||||
//D<>termination de la p<>riode d'alerte d'information d'une mise <20> jour
|
||||
$periode_alerte_update = time() - $alert_last_update_website;
|
||||
|
||||
//On v<>rifie si il faut afficher un message d'avertissement
|
||||
if($last_update_website > $periode_alerte_update)
|
||||
$alert_last_update = '<a class="element brand" onClick="show_hide_id(\'alert_last_update\', \'visible\');"><span class="button_moderne_menu"><span class="icon-warning"></span></span></a>'; //Il faut alerter au sujet de la mise <20> jour
|
||||
|
||||
if(!isset($_SESSION['ID']))
|
||||
{
|
||||
?><font class="metro">
|
||||
<div class="navigation-bar blue new_navbar">
|
||||
<div class="navbar-content">
|
||||
<a href="index.php" class="element titre_site_without_login_big">COMMUNIQUONS.ORG</a>
|
||||
<a href="index.php" class="element titre_site_without_login_small">Comunic</a>
|
||||
<span class="element-divider"></span>
|
||||
<?php if(isset($alert_last_update)) echo $alert_last_update ?>
|
||||
|
||||
<!-- Formulaire de connexion -->
|
||||
<div class="element input-element place-right" id="loginuser">
|
||||
<form action="connecter.php" method="post" id="form_login_top">
|
||||
<div class="input-control text">
|
||||
<input placeholder="Adresse mail..." type="text" name="mail" required <?php if(isset($_COOKIE['usermail'])) echo "value='".$_COOKIE['usermail']."'"; ?> />
|
||||
</div>
|
||||
|
||||
<div class="input-control text">
|
||||
<input placeholder="Mot de passe..." type="password" name="motdepasse" required />
|
||||
</div>
|
||||
|
||||
<div class="button" onClick="document.getElementById('form_login_top').submit()">
|
||||
Connexion
|
||||
</div>
|
||||
|
||||
<!-- Bouton cach<63>, Permet la validation du formulaire par la touche entr<74>e -->
|
||||
<div style="visibility: hidden">
|
||||
<input type="submit" />
|
||||
</div>
|
||||
<!-- Fin de: Bouton cach<63> -->
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<a href="<?php echo $urlsite; ?>connecter.php" class="element bouton_login_user place-right">Connexion</a>
|
||||
<!-- Fin de: Formulaire de connexion -->
|
||||
</div>
|
||||
</div>
|
||||
<div class="correctifnouvbarre"> </div> <!-- Correctif de la nouvelle barre de menu -->
|
||||
</font>
|
||||
<?php
|
||||
}
|
||||
else
|
||||
{
|
||||
//On commence par rechercher les informations de la personne
|
||||
$afficher = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
|
||||
//On inclus le menu
|
||||
include('menu.php');
|
||||
|
||||
//On affiche la liste des amis si n<>cessaire
|
||||
if(!isset($menu_light))
|
||||
{
|
||||
|
||||
//Affichage de la liste des amis
|
||||
if(count(liste_amis($_SESSION['ID'], $bdd)) == 0)
|
||||
{
|
||||
//Peu d'amis
|
||||
?><font class="metro">
|
||||
<div class="listeamis_light" id="listeamis">
|
||||
<div class="window">
|
||||
<div class="caption" id="topAmis">
|
||||
<span class="icon icon-user"></span>
|
||||
<div class="title"><?php echo $lang[41]; ?></div>
|
||||
<button class="btn-close" onClick="ferme_panneau_amis();" style="cursor: pointer;"></button>
|
||||
</div>
|
||||
<div class="content">
|
||||
<!-- Affichage dynamique des amis -->
|
||||
<table id="fileAmis">
|
||||
<tr><td><?php echo code_inc_img(path_img_asset('wait.gif'), "Veuillez patienter, chargement en cours..."); ?></td></tr>
|
||||
</table>
|
||||
|
||||
<!-- Fermeture du panneau des amis <span class="fermerpanneauami"><input type="button" value="Fermer" onClick="ferme_panneau_amis();" /></span>-->
|
||||
<!-- Script javascript avec ajax -->
|
||||
<script type='text/javascript'>var beaucoup_amis = false; /* De petits avatars sont pr<70>f<EFBFBD>rables */</script>
|
||||
<script type='text/javascript'>var debut_URL_liste_amis = "<?php echo $urlsite; ?>"; /* Configuration de l'URL o<> trouver la liste d'amis */</script>
|
||||
<?php echo code_inc_js(path_js_asset('amisajax.js')); ?>
|
||||
|
||||
<!-- Internet errors counter -->
|
||||
<span style="display: none;" id="internet_error">0</span>
|
||||
<!-- Fin de: Script javascript ajax -->
|
||||
<!-- Fin de: affichage dynamique des amis -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</font><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
//Beacoup d'amis
|
||||
?><div class="listeamis metro" id="listeamis">
|
||||
<!-- Affichage dynamique des amis -->
|
||||
<div class="panel" data-role="panel">
|
||||
<div class="panel-header panel-header-liste-amis"> Amis </div>
|
||||
|
||||
<div class="panel-content">
|
||||
<table id="fileAmis" class="grande_liste_amis">
|
||||
<tr><td><?php echo code_inc_img(path_img_asset('wait.gif'), "Veuillez patienter, chargement en cours..."); ?></td></tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Fermeture du panneau des amis--> <div class="fermerpanneauami"><input type="button" value="Fermer" onClick="ferme_panneau_amis();" /></div>
|
||||
<!-- Script javascript avec ajax -->
|
||||
<script type='text/javascript'>var beaucoup_amis = true; /* De grands avatars sont pr<70>f<EFBFBD>rables */</script>
|
||||
<script type='text/javascript'>var debut_URL_liste_amis = "<?php echo $urlsite; ?>"; /* Configuration de l'URL o<> trouver la liste d'amis */</script>
|
||||
<?php echo code_inc_js(path_js_asset('amisajax.js')); ?>
|
||||
|
||||
<!-- Internet erros counter -->
|
||||
<span style="display: none;" id="internet_error">0</span>
|
||||
<!-- Fin de: Script javascript ajax -->
|
||||
<!-- Fin de: affichage dynamique des amis -->
|
||||
</div><?php
|
||||
}
|
||||
|
||||
//On v<>rifie si il faut masquer le volet des amis
|
||||
if($afficher['volet_amis_ouvert'] == 0)
|
||||
{
|
||||
?><style type="text/css">.listeamis { display: none; }</style><?php
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Message d'avertissement si n<>cessaire
|
||||
if(isset($alert_last_update))
|
||||
{
|
||||
?><link rel="stylesheet" href="<?php echo $urlsite ?>css/warning_update.css" />
|
||||
<div id="alert_last_update">
|
||||
<!-- Image de l'avertissement -->
|
||||
<img src="<?php echo $urlsite; ?>img/warning_update.png" />
|
||||
|
||||
<div class="close"><input type="button" value="Fermer" onClick="show_hide_id('alert_last_update', 'hidden');" /></div>
|
||||
</div><?php
|
||||
}
|
||||
?>
|
277
inc/pages/contact/contact.inc.php
Executable file
277
inc/pages/contact/contact.inc.php
Executable file
@ -0,0 +1,277 @@
|
||||
<?php
|
||||
/**
|
||||
* Contact administration page
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit("Invalid call - ".$_SERVER['PHP_SELF']);
|
||||
|
||||
//Crypt inclusion
|
||||
$cryptinstall=path_3rdparty("crypt/cryptographp.fct.php");
|
||||
include $cryptinstall;
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Contact - Comunic</title>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
</head>
|
||||
<body class="metro">
|
||||
<?php include(pagesRelativePath('common/pageTop.php')); ?>
|
||||
<h1 class='titre'>Contact</h1>
|
||||
<div class="nouveau_corps_page"><?php
|
||||
//R<>cup<75>ration de la liste des types de contact
|
||||
$liste_type_contact = get_list_type_contact($bdd);
|
||||
|
||||
//Si il s'agit d'une personne connect<63>e, on liste des contacts disponibles
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//On v<>rifie si il faut supprimer un contact
|
||||
if(isset($_GET['delete_contact']))
|
||||
{
|
||||
//Enregistrement du num<75>ro de contact
|
||||
$id_contact = $_GET['delete_contact']*1;
|
||||
|
||||
//V<>rification du num<75>ro de contact
|
||||
if($id_contact > 0)
|
||||
{
|
||||
//On supprime le contact
|
||||
$sql = "DELETE FROM contact WHERE ID = ? AND ID_personne = ?";
|
||||
|
||||
//Ex<45>cution de la requ<71>te
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($id_contact, $_SESSION['ID']));
|
||||
}
|
||||
}
|
||||
|
||||
?><h3>Anciennes prises de contact</h3>
|
||||
<?php
|
||||
//Requ<71>te de recherche
|
||||
$sql = "SELECT * FROM contact WHERE ID_personne = ? ORDER BY ID";
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($_SESSION['ID']));
|
||||
|
||||
//Affichage des r<>sultats
|
||||
while($afficher_contact = $requete->fetch())
|
||||
{
|
||||
?><div class="notice marker-on-right bg-cobalt fg-white one_contact">
|
||||
<?php echo $liste_type_contact[$afficher_contact['ID_type']-1]["nom_".$lang['nomlangue_raccourcis']]; ?><br />
|
||||
<small><?php echo adapte_date($afficher_contact['date_envoi']); ?> (<a href="#" onClick="confirmaction('<?php echo siteURL('contact.php')."?delete_contact=".$afficher_contact['ID']; ?>', 'Voulez-vous vraiment supprimer cette prise de contact ? Ce choix est definitif !');">supprimer</a>)</small><br /><br />
|
||||
|
||||
<?php echo $afficher_contact['texte']; ?>
|
||||
</div><br /><?php
|
||||
|
||||
//On indique qu'un contact a <20>t<EFBFBD> afficher
|
||||
$one_contact_showed = true;
|
||||
}
|
||||
|
||||
//Fermeture de la requ<71>te
|
||||
$requete->closeCursor();
|
||||
|
||||
//On v<>rifie si aucun contact n'a <20>t<EFBFBD> affich<63>
|
||||
if(!isset($one_contact_showed))
|
||||
{
|
||||
?><div class="notice marker-on-right bg-cobalt fg-white one_contact">
|
||||
Aucune prise de contact pour l'instant
|
||||
</div><?php
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
}
|
||||
|
||||
if(isset($_POST['texte']) AND isset($_POST['id_type']))
|
||||
{
|
||||
if($_POST['texte'] == "")
|
||||
{
|
||||
//Message d'erreur
|
||||
echo('Vous n\'avez pas spécifié de contact !');
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!isset($_SESSION['ID']))
|
||||
{
|
||||
//On v<>rifie notre image :)
|
||||
if(!isset($_POST['codeimage']) && !isset($_POST['mail']))
|
||||
{
|
||||
echo "Ce formulaire de contact ne doit pas provenir d'une autre ressource que Comunic.";
|
||||
die();
|
||||
}
|
||||
elseif(!chk_crypt($_POST['codeimage']))
|
||||
{
|
||||
echo "<p>Le contact n'a pas pu être enregistré pour la raison suivante : Code de l'image de validation incorrect.</p>";
|
||||
die();
|
||||
}
|
||||
elseif($_POST['mail'] == "")
|
||||
{
|
||||
echo "<p>Le contact n'a pas pu être enregistré pour la raison suivante : Erreur de l'adresse mail.</p>";
|
||||
die();
|
||||
}
|
||||
}
|
||||
|
||||
//On v<>rifie le type de contact
|
||||
if(!isset($liste_type_contact[$_POST['id_type']-1]))
|
||||
{
|
||||
die("<p>Raison de prise de contact indéterminable.</p>");
|
||||
}
|
||||
|
||||
//On d<>finit le compte de celui qui poste la demande
|
||||
$user = 0;
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
$user = $_SESSION['ID'];
|
||||
}
|
||||
|
||||
$texte = $_POST['texte'];
|
||||
|
||||
if(isset($_POST['mail']))
|
||||
{
|
||||
if($_POST['mail'] != "")
|
||||
{
|
||||
$texte = $_POST['texte']." <br /> Adresse mail de l'utilisateur non connecté : ".$_POST['mail'];
|
||||
}
|
||||
}
|
||||
|
||||
//Enregistrement de l'adresse IP
|
||||
if(isset($_SERVER['REMOTE_ADDR']))
|
||||
{
|
||||
$texte = $texte." <br /> Adresse IP de l'ordinateur ayant envoyé le contact : ".$_SERVER['REMOTE_ADDR'];
|
||||
}
|
||||
|
||||
//On poste la demande
|
||||
$sql = "INSERT INTO contact (ID_personne, date_envoi, texte, ID_type, mail_personne, IP_personne) VALUES (".$user.", NOW(), ?, ?, ?, ?)";
|
||||
|
||||
//Ex<45>cution de la requete
|
||||
$insertion = $bdd->prepare($sql);
|
||||
$insertion->execute(array($texte, $_POST['id_type'], (!isset($_SESSION['ID']) ? $_POST['mail'] : ""), $_SERVER['REMOTE_ADDR']));
|
||||
|
||||
//On affiche un message de succ<63>s
|
||||
echo "<p>".code_inc_img(path_img_asset('succes.png'), "Bravo !")." La demande a bien été prise en compte. ".($active_envoi_mail == "oui" ? "Un message de confirmation vous sera envoyé</p>" : '')."</p>";
|
||||
echo "<p>Voici le texte de la demande : <pre>".$texte."</pre></p>";
|
||||
echo "<p>Voici la raison de la prise de contact : <pre>".$liste_type_contact[$_POST['id_type']-1]["nom_".$lang['nomlangue_raccourcis']]."</pre></p>";
|
||||
|
||||
//Envoi du message <20> l'utilisateur
|
||||
//V<>rification de l'autorisation de l'envoi d'un mail
|
||||
if($active_envoi_mail == "oui")
|
||||
{
|
||||
//Envoi d'un message de confirmation
|
||||
$send_mail = true;
|
||||
$sujet = "Confirmation de demande de contact";
|
||||
$description_rapide = "Votre demande de prise de contact Comunic a <20>t<EFBFBD> enregistr<74>e.";
|
||||
$nom_destinataire = "Vous";
|
||||
$adresse_mail_destinataire = (isset($_SESSION['ID']) ? $afficher['mail'] : $_POST['mail']);
|
||||
$texte_message = "
|
||||
<h3 class='titre'>Contact</h3>
|
||||
<p>Votre demande de contact a été prise en compte. Voici quelle est votre demande :</p>
|
||||
<pre>".$texte."</pre>
|
||||
<p>Type de demande :</p>
|
||||
<pre>".$liste_type_contact[$_POST['id_type']-1]["nom_fr"]."</pre>
|
||||
<p>Nous vous répondrons dans les plus bref délais.</p>
|
||||
<p><a href=".$urlsite.">Connectez-vous <20> Comunic</a> pour renvoyer un contact si nécessaire.
|
||||
</p>";
|
||||
|
||||
//Envoi du message
|
||||
include('inc/envoi_mail.php');
|
||||
}
|
||||
|
||||
//Envoi du message <20> l'administration
|
||||
//V<>rification de l'autorisation de l'envoi d'un mail
|
||||
if($active_envoi_mail == "oui")
|
||||
{
|
||||
//Envoi d'un message de confirmation
|
||||
$send_mail = true;
|
||||
$sujet = "Demande de contact";
|
||||
$description_rapide = "Un utilisateur de Comunic a demand<6E> <20> entrer en contact avec vous.";
|
||||
$nom_destinataire = "Administration de Comunic";
|
||||
$adresse_mail_destinataire = $admin_mail_envoi;
|
||||
$texte_message = "
|
||||
<h3 class='titre'>Contact</h3>
|
||||
<p>Un utilisateur de Comunic a souhaité entrer en contact avec l'administration. Voici le texte de la demande :</p>
|
||||
<pre>".$texte."</pre>
|
||||
<p>Veuillez répondre à ce contact dans les plus bref délais.</p>
|
||||
<p>Connectez-vous à l'administration pour obtenir plus de détails.
|
||||
</p><h4 class='titre'>
|
||||
Détails techniques:
|
||||
</h4><table>
|
||||
<tr><td>La personne est connectée :</td>
|
||||
<td>".(isset($_SESSION['ID']) ? "Oui" : "Non")."</td></tr><tr><td>
|
||||
Adresse mail :</td>
|
||||
<td>".(isset($_SESSION['ID']) ? $afficher['mail'] : $_POST['mail'])."</td></tr>
|
||||
<tr><td>ID compte</td>
|
||||
<td>".$user."</td></tr>
|
||||
<tr><td>Type de contact</td>
|
||||
<td>".$liste_type_contact[$_POST['id_type']-1]["nom_fr"]."</td></tr>
|
||||
</table>";
|
||||
|
||||
//Envoi du message
|
||||
include('inc/envoi_mail.php');
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//On affiche le formulaire de contact
|
||||
?><form action='<?php echo siteURL('contact.php'); ?>' method='post' name='contact' class="form_contact">
|
||||
<h3> Contactez-nous </h3>
|
||||
<p>Vous pouvez utiliser le formulaire de contact pour nous proposer une amélioration ou nous faire une demande.</p>
|
||||
<table>
|
||||
</tr>
|
||||
<td>La raison de cette prise de contact </td>
|
||||
<td><select name="id_type"><?php
|
||||
//On d<>termine quel type de contact sera s<>lectionn<6E> par d<>faut
|
||||
$type_contact = (isset($_POST['id_type']) ? $_POST['id_type'] : 1 );
|
||||
|
||||
//Affichage de la liste des propositions
|
||||
foreach($liste_type_contact as $afficher_type_contact)
|
||||
{
|
||||
echo "<option value='".$afficher_type_contact['ID']."' ".($type_contact == $afficher_type_contact['ID'] ? "selected" : "")."> ".$afficher_type_contact['nom_'.$lang['nomlangue_raccourcis']];
|
||||
}
|
||||
?></select></td>
|
||||
</tr><tr>
|
||||
<td>
|
||||
Votre message
|
||||
</td>
|
||||
<td>
|
||||
<textarea name='texte'><?php if(isset($_POST['contact'])) echo $_POST['contact']; ?></textarea>
|
||||
</tr><?php
|
||||
if(!isset($_SESSION['ID']))
|
||||
{
|
||||
//Petite v<>rification de s<>curit<69>, au cas ou... :)
|
||||
?><tr>
|
||||
<td>Image de validation :</td>
|
||||
<td style="text-align: center"><?php dsp_crypt(0,1); ?></td>
|
||||
</tr><tr>
|
||||
<td>Code de l'image</td>
|
||||
<td><input type="text" name="codeimage"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Votre adresse mail</td>
|
||||
<td><input type="mail" name="mail" <?php if(isset($_POST['mail'])) echo "value='".$_POST['mail']."'"; ?> required/></td>
|
||||
</tr><?php
|
||||
}
|
||||
?>
|
||||
<tr>
|
||||
<td colspan="2"><h6>Afin de pouvoir déterminer avec précision qui a réellement envoyé<br />
|
||||
ce texte en cas de problème grave, votre adresse IP est enregistrée.</h6></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
Confirmer l'envoi
|
||||
</td>
|
||||
<td>
|
||||
<input type='submit' value='Envoyer' />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2"><h6>En cliquant sur "Envoyer" vous reconaissez être<br />
|
||||
le légitime possesseur de l'adresse mail <i><?php if(isset($_SESSION['ID'])) echo $afficher['mail']; else echo "spécifiée ci-dessus"; ?></i> .</h6></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</div><hr />
|
||||
<?php include(pagesRelativePath('common/pageBottom.php')); ?>
|
||||
</body>
|
||||
</html>
|
21
inc/pages/homeLogout/acceuil-en.html
Executable file
21
inc/pages/homeLogout/acceuil-en.html
Executable file
@ -0,0 +1,21 @@
|
||||
<p>Between us.</p>
|
||||
<table border="0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td> <img src="%URL_SITE%img/user_add.png" alt="" /></td>
|
||||
<td>Create an account now.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> <img src="%URL_SITE%img/search_accounts.png" alt="" /></td>
|
||||
<td>Search your friends.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> <img src="%URL_SITE%img/comments.png" alt="" /></td>
|
||||
<td>Talk with your friends.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td> <img src="%URL_SITE%img/lock.png" alt="" /></td>
|
||||
<td>Comunic will respect your private life.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
21
inc/pages/homeLogout/acceuil-fr.html
Executable file
21
inc/pages/homeLogout/acceuil-fr.html
Executable file
@ -0,0 +1,21 @@
|
||||
<p>Un nouveau moyen de commmunication.</p>
|
||||
<table border="0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><div class="img-add-account"></div></td>
|
||||
<td>Créez vous un compte dès maintenant.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="img-search-accounts"></div></td>
|
||||
<td>Cherchez vos amis.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="img-comments"></div></td>
|
||||
<td>Communiquez avec vos amis.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><div class="img-cadenas"></div></td>
|
||||
<td>Comunic s'engage à respecter votre vie privée.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
112
inc/pages/homeLogout/homeLogout.inc.php
Normal file
112
inc/pages/homeLogout/homeLogout.inc.php
Normal file
@ -0,0 +1,112 @@
|
||||
<?php
|
||||
/**
|
||||
* Home screen when no user is logged in
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call ! - homeLogout.inc.php');
|
||||
|
||||
//On vérifie si il s'agit de Internet Explorer 7
|
||||
//Si c'est le cas, on affiche un message d'incompatibilté
|
||||
if(isset($_SERVER['HTTP_USER_AGENT']))
|
||||
{
|
||||
if(preg_match('/MSIE 7/', $_SERVER['HTTP_USER_AGENT']))
|
||||
{
|
||||
?><table align='center'>
|
||||
<tr>
|
||||
<td>
|
||||
<img src='img/erreur.png' />
|
||||
</td>
|
||||
<td>
|
||||
<p><b><?php echo $lang[24]; ?> :</b> Internet Explorer 7.0 est un navigateur trop ancien pour être encore utilisé.</p>
|
||||
<p>Internet Explorer 7 ne permet pas l'exécution de toutes les fonctionalitées de Comunic. Par exemple, le chat privé pourra ne pas s'ouvrir correctement.</p>
|
||||
<p>Ce navigateur présente d'importantes failles de sécurité pouvant nuire à la sécurité de l'ordinateur.</p>
|
||||
<p>Nous vous recommandons fortement d'installer sur votre ordinateur un nouveau navigateur comme Mozilla Firefox, qui est un navigateur gratuit, moderne et securisé.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table><?php
|
||||
}
|
||||
|
||||
//On vérifie si il s'agit de Internet Explorer 6
|
||||
//Si c'est le cas, on affiche un message d'incompatibilté
|
||||
if(preg_match('/MSIE 6.0/', $_SERVER['HTTP_USER_AGENT']))
|
||||
{
|
||||
//Fenêtre d'erreur dans ce cas-là
|
||||
?><table align='center'>
|
||||
<tr>
|
||||
<td>
|
||||
<img src='img/exclamation.png' />
|
||||
</td>
|
||||
<td>
|
||||
<p>Le navigateur que vous utilisez (Internet Explorer 6) n'est pas compatible avec Comunic.</p>
|
||||
<p>Nous vous recommandons fortement de mettre à niveau vers un nouveau navigateur tel que Mozilla Firefox accessible à cette adresse : <a href='http://mozilla.org/' title='Site officiel de mozilla'>http://mozilla.org/</a></p>
|
||||
</td>
|
||||
</tr>
|
||||
</table><?php
|
||||
}
|
||||
}
|
||||
|
||||
//Check if we have to show a beta message
|
||||
if ($affichebeta == 1)
|
||||
{
|
||||
//On affiche le message
|
||||
?>
|
||||
<!-- Message 'en beta' -->
|
||||
<div class="ui-state-highlight ui-corner-all" style="margin-top: 20px; padding: 0 .7em;">
|
||||
<p>
|
||||
<span class="ui-icon ui-icon-info" style="float: left; margin-right: .3em;"></span>
|
||||
<strong><?php echo $lang[24]; ?> :</strong> <?php echo $textebeta[$lang['nomlangue_raccourcis']]; ?>
|
||||
</p>
|
||||
</div>
|
||||
<!-- Fin de: Message 'en beta' -->
|
||||
<?php
|
||||
}
|
||||
|
||||
if($affichemessageclassique == 1)
|
||||
{
|
||||
?>
|
||||
<table align='center'>
|
||||
<tr>
|
||||
<td>
|
||||
<img src='img/erreur.png' />
|
||||
</td>
|
||||
<td>
|
||||
<p><b><?php echo $lang[24]; ?> :</b><?php echo corrige_caracteres_speciaux($textecookie[$lang['nomlangue_raccourcis']]); ?></p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
<!-- Open Graph content -->
|
||||
<meta property="og:title" content="Communiquons.org"/>
|
||||
<meta property ="og:description" content="Découvrez un nouveau moyen de communication respectant la vie privée."/>
|
||||
<meta property="og:image" content="<?php echo path_img_asset("logo_comunic.png"); ?>"/>
|
||||
|
||||
<br />
|
||||
<div class="metro home_contener">
|
||||
<!-- Texte d'acceuil -->
|
||||
<div class="message_page_acceuil_login">
|
||||
<?php echo add_url_site(file_get_contents(__DIR__.'/acceuil-'.$lang['nomlangue_raccourcis'].'.html'), $urlsite); ?>
|
||||
</div>
|
||||
<!-- Fin de: texte d'acceuil -->
|
||||
|
||||
<!-- Boutons d'accès -->
|
||||
<div class="newaccount_page_acceuil_login">
|
||||
<a class="command-button info" href="creercompte.php">
|
||||
<i class="icon-pencil on-left"></i>
|
||||
<small>Créez-vous un compte</small>
|
||||
</a>
|
||||
|
||||
<p class="or">ou</p>
|
||||
|
||||
<a class="command-button success" href="whatiscomunic.php">
|
||||
<i class="icon-arrow-right-3 on-left"></i>
|
||||
<small>Découvrez les fonctionnalités de Comunic</small>
|
||||
</a>
|
||||
</div>
|
||||
<!-- Fin de: Boutons d'accès-->
|
||||
</div>
|
||||
</div>
|
||||
<?php include(pagesRelativePath('common/pageBottom.php'));
|
103
inc/pages/homeUser/addPost/addpost.inc.php
Executable file
103
inc/pages/homeUser/addPost/addpost.inc.php
Executable file
@ -0,0 +1,103 @@
|
||||
<?php
|
||||
/**
|
||||
* Add a post
|
||||
*/
|
||||
|
||||
isset($_SESSION['ID']) OR exit('addPost requires login !');
|
||||
|
||||
//Check requirements
|
||||
if(!isset($_GET['id']) AND !isset($id))
|
||||
die("Invalid call!");
|
||||
|
||||
if(!isset($id))
|
||||
//Définition de l'ID (avec sécurité)
|
||||
$idPersonn = $_GET['id']*1;
|
||||
else
|
||||
$idPersonn = $id;
|
||||
|
||||
//If it is the actuality, we have to change the ID to the main ID
|
||||
if($idPersonn == 0)
|
||||
$idPersonn = $_SESSION['ID'];
|
||||
|
||||
//Récupération des informations de la personne
|
||||
$afficher = cherchenomprenom($idPersonn, $bdd);
|
||||
|
||||
//Adaptation des variables serveur
|
||||
$_SERVER['PHP_SELF'] = str_replace('action.php', 'index.php', $_SERVER['PHP_SELF']);
|
||||
|
||||
|
||||
//Si ce n'est pas la page de la personne on vérifie si elle est amie et autorisée à ajouter un post
|
||||
if($_SESSION['ID'] != $idPersonn)
|
||||
{
|
||||
//Including file
|
||||
include('controllers/checkFriendAllowance.inc.php');
|
||||
}
|
||||
|
||||
if($_SESSION['ID'] == $idPersonn || isset($allowcreatepost))
|
||||
{
|
||||
//Initialisation du niveau de visibilité
|
||||
$niveau_visibilite = (isset($_POST['niveau_visibilite']) ? $_POST['niveau_visibilite']*1 : 2);
|
||||
|
||||
//On complète, si nécessaire, le niveau de visibilité
|
||||
if($niveau_visibilite == 3 AND isset($_POST['liste_groupes']))
|
||||
{
|
||||
//Intégration des groupes dans le niveau de visibilité
|
||||
foreach($_POST['liste_groupes'] as $lister=>$value)
|
||||
{
|
||||
$niveau_visibilite .= "|".$lister;
|
||||
}
|
||||
}
|
||||
|
||||
//Vérification de l'envoi d'un texte ou d'une image
|
||||
if(isset($_POST['texte']))
|
||||
{
|
||||
//Including file
|
||||
include('controllers/postTextImage.inc.php');
|
||||
}
|
||||
|
||||
//If a YouTube video has been posted...
|
||||
if(isset($_POST['youtube']) && isset($_POST['commentyoutube']))
|
||||
{
|
||||
//Including file
|
||||
include('controllers/postYouTube.inc.php');
|
||||
}
|
||||
|
||||
//Vérification de l'existence de l'envoi d'une vidéo
|
||||
if(isset($_POST['idvideo']) && isset($_POST['commentaire_video']) && isset($_POST['niveau_visibilite']))
|
||||
{
|
||||
//Including file
|
||||
include('controllers/postVideo.inc.php');
|
||||
}
|
||||
|
||||
//Vérification de l'envoi d'un événement
|
||||
if(isset($_POST['date']) AND isset($_POST['nom_evenement']))
|
||||
{
|
||||
//Including file
|
||||
include('controllers/postEvent.inc.php');
|
||||
}
|
||||
|
||||
//Vérification de l'envoi d'un lien vers une page web
|
||||
if(isset($_POST['adresse_page']) AND isset($_POST['texte_lien_page']))
|
||||
{
|
||||
//Including file
|
||||
include('controllers/postWebLink.inc.php');
|
||||
}
|
||||
|
||||
//Vérification de l'envoi d'un fichier PDF
|
||||
if(isset($_POST['texte_post_with_pdf']))
|
||||
{
|
||||
//Including file
|
||||
include('controllers/postPDF.inc.php');
|
||||
}
|
||||
|
||||
//On vérifie si il faut ajouter un sondage
|
||||
if(isset($_POST['reponses_sondage']) AND isset($_POST['question_sondage']) AND isset($_POST['commentaire_sondage']))
|
||||
{
|
||||
//Including file
|
||||
include('controllers/postSurvey.inc.php');
|
||||
}
|
||||
|
||||
//Add text form
|
||||
//Including file
|
||||
include('views/v_addPost.inc.php');
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* If two personns are friend, this file check
|
||||
* the second one has right to make posts on
|
||||
* the first one page.
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
if($afficher['autoriser_post_amis'] == 1 and detectesilapersonneestamie($_SESSION['ID'], $idPersonn, $bdd))
|
||||
{
|
||||
//Requête de recherche (en fait, on regarde la ligne "ami" du point de vue de l'autre personne...)
|
||||
$sql = "SELECT * FROM amis WHERE (ID_personne = ?) && (ID_amis = ?) && (actif = 1)";
|
||||
|
||||
//Exécution de la requête
|
||||
$requeteamis = $bdd->prepare($sql);
|
||||
$requeteamis->execute(array($idPersonn, $_SESSION['ID']));
|
||||
|
||||
//On renvoi le résultat suivant si la personne est amie ou non
|
||||
if(!$verifierautorisation = $requeteamis->fetch())
|
||||
{
|
||||
//On ne possède pas de droit
|
||||
}
|
||||
else
|
||||
{
|
||||
//On vérifie si l'on a le droit
|
||||
if($verifierautorisation['autoriser_post_page'] == 1)
|
||||
$allowcreatepost = 1; //On l'a!
|
||||
}
|
||||
|
||||
//Fermeture de la requete
|
||||
$requeteamis->closeCursor();
|
||||
}
|
48
inc/pages/homeUser/addPost/controllers/postEvent.inc.php
Normal file
48
inc/pages/homeUser/addPost/controllers/postEvent.inc.php
Normal file
@ -0,0 +1,48 @@
|
||||
<?php
|
||||
/**
|
||||
* Post an event
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
//Exemple d'envoi :
|
||||
// [date] => 16.04.2015
|
||||
// [heure] => 4
|
||||
// [minute] => 4
|
||||
// [nom_evenement] => test
|
||||
// [niveau_visibilite] => 2
|
||||
|
||||
$date = $_POST['date'];
|
||||
//$heure = $_POST['heure']*1;
|
||||
//$minute = $_POST['minute']*1;
|
||||
$nom_evenement = $_POST['nom_evenement'];
|
||||
|
||||
if($date == "")
|
||||
{
|
||||
echo affiche_message_erreur("L'événement n'a pas de date !"); //L'événement doit avoir une date
|
||||
}
|
||||
else
|
||||
{
|
||||
//Décomposition de la date
|
||||
$array_date = explode('|', str_replace('.', '|', $date));
|
||||
|
||||
if(count($array_date) != 3)
|
||||
echo affiche_message_erreur("La date spécifiée est incorrecte."); //La date donnée est invalide
|
||||
elseif($array_date[1] > 31 OR $array_date[1] < 1)
|
||||
echo affiche_message_erreur("Le jour spécifié est incorrect."); //Le jour donné est invalide
|
||||
elseif($array_date[2] < date("Y", time()))
|
||||
echo affiche_message_erreur("L'année donnée est passée."); //L'année donnée est invalide
|
||||
else
|
||||
{
|
||||
//Ajout du texte
|
||||
if($_SESSION['ID'] == $idPersonn)
|
||||
ajouttexte($_SESSION['ID'], $nom_evenement, $bdd, $niveau_visibilite, "count_down", "", $array_date[2], $array_date[1], $array_date[0]);
|
||||
else //Si c'est un amis
|
||||
ajouttexte_amis($_SESSION['ID'], $idPersonn, $nom_evenement, $bdd, $niveau_visibilite, "count_down", "", $array_date[2], $array_date[1], $array_date[0]);
|
||||
|
||||
//Message de succès
|
||||
echo "<p><img src='".path_img_asset('succes.png')."' title='Succès' alt='V' /> L'événement a bien été ajouté.</p>";
|
||||
}
|
||||
}
|
72
inc/pages/homeUser/addPost/controllers/postPDF.inc.php
Normal file
72
inc/pages/homeUser/addPost/controllers/postPDF.inc.php
Normal file
@ -0,0 +1,72 @@
|
||||
<?php
|
||||
/**
|
||||
* Post a PDF file
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
//Enregistrement du texte dans une variable
|
||||
$texte = $_POST['texte_post_with_pdf'];
|
||||
|
||||
if(isset($_FILES['fichier_pdf']))
|
||||
{
|
||||
//Enregistrement des informations du PDF dans une variable
|
||||
$infos_pdf = $_FILES['fichier_pdf'];
|
||||
|
||||
//Contrôle de la présence d'une erreur
|
||||
if($infos_pdf['error'] != 0)
|
||||
{
|
||||
//Une erreur a survenue lors de l'envoi
|
||||
$erreur_ajout_pdf = "Une erreur a survenue lors de l'envoi du PDF. Merci de réssayer.";
|
||||
}
|
||||
elseif($infos_pdf['type'] != "application/pdf")
|
||||
{
|
||||
//Le fichier choisi n'est pas un PDF
|
||||
$erreur_ajout_pdf = "Le fichier envoyé n'est pas un PDF.";
|
||||
}
|
||||
else
|
||||
{
|
||||
//Détermination du nom du pdf
|
||||
$nom_pdf = sha1(time().$_SESSION['ID'].$texte.$_SERVER['REMOTE_ADDR']);
|
||||
|
||||
while(file_exists(relativeUserDataFolder("post_pdf/".$nom_pdf.".pdf")))
|
||||
{
|
||||
$nom_pdf = crypt($nom_pdf);
|
||||
}
|
||||
|
||||
//On vérifie si un dossier a été allouée à la personne, création automatique le cas échéant
|
||||
checkPersonnalFolder(relativeUserDataFolder("post_pdf/"), $_SESSION['ID']);
|
||||
$folder_user_pdf = "post_pdf/".$_SESSION['ID']."/";
|
||||
|
||||
//On finit le nom du PDF
|
||||
$nom_pdf = $folder_user_pdf.$nom_pdf.".pdf";
|
||||
|
||||
//Copie du PDF
|
||||
if(move_uploaded_file($infos_pdf['tmp_name'], relativeUserDataFolder($nom_pdf)))
|
||||
{
|
||||
//Ajout du texte
|
||||
if($_SESSION['ID'] == $idPersonn)
|
||||
ajouttexte($_SESSION['ID'], $texte, $bdd, $niveau_visibilite, "pdf", $nom_pdf);
|
||||
else //Si c'est un amis
|
||||
ajouttexte_amis($_SESSION['ID'], $idPersonn, $texte, $bdd, $niveau_visibilite, "pdf", $nom_pdf);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Il y a une erreur lors de la copie
|
||||
$erreur_ajout_pdf = "Une erreur a survenue lors de la copie du PDF vers son emplacement définitif. Merci de réssayer.";
|
||||
}
|
||||
}
|
||||
|
||||
//Si il y a une erreur, on l'affiche
|
||||
if(isset($erreur_ajout_pdf))
|
||||
{
|
||||
?><script>affiche_notification_erreur("<?php echo $erreur_ajout_pdf; ?>");</script><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
//Sinon on affiche un message de succès
|
||||
?><script>affiche_notification_succes("Le PDF a bien été enregistré.");</script><?php
|
||||
}
|
||||
}
|
87
inc/pages/homeUser/addPost/controllers/postSurvey.inc.php
Normal file
87
inc/pages/homeUser/addPost/controllers/postSurvey.inc.php
Normal file
@ -0,0 +1,87 @@
|
||||
<?php
|
||||
/**
|
||||
* Post a survey
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
//Enregistrement des variables
|
||||
$reponses_sondage = bloquebalise($_POST['reponses_sondage']);
|
||||
$question_sondage = bloquebalise($_POST['question_sondage']);
|
||||
$commentaire_sondage = $_POST['commentaire_sondage'];
|
||||
|
||||
//Choix par défaut pour les réponses au sondage si il n'y en a aucune
|
||||
if(str_replace("\n", "", $reponses_sondage) == "")
|
||||
$reponses_sondage = "None";
|
||||
|
||||
//On commence par enregistrer le texte dans la bdd
|
||||
if($_SESSION['ID'] == $idPersonn)
|
||||
ajouttexte($_SESSION['ID'], $commentaire_sondage, $bdd, $niveau_visibilite, "sondage");
|
||||
else //Si c'est un amis
|
||||
ajouttexte_amis($_SESSION['ID'], $idPersonn, $commentaire_sondage, $bdd, $niveau_visibilite, "sondage");
|
||||
|
||||
//Récupération des informations sur le texte précédemment posté
|
||||
$infos_texte = select_sql("texte", "texte = ? AND (ID_personne = ? OR ID_amis = ?) AND niveau_visibilite = ? ORDER BY ID DESC", $bdd, array(
|
||||
$commentaire_sondage,
|
||||
$_SESSION['ID'],
|
||||
$_SESSION['ID'],
|
||||
$niveau_visibilite
|
||||
));
|
||||
|
||||
//On vérifie que l'on a bien notre texte
|
||||
if(count($infos_texte) == 0)
|
||||
{
|
||||
//Rapport d'erreur à l'administration
|
||||
report_error('if(count($infos_texte) == 0)', 'La variable $infos_texte ne compte aucune entrée, alors qu\'elle devrait en contenir au moins une (permet l\'ajout de sondages) dans addpost.php (inc).');
|
||||
|
||||
//Affichage d'un message d'erreur
|
||||
affiche_message_erreur("Nous avons rencontré une erreur en interne. (Err Sondage Inser 1) L'administration a été informée de cette erreur. Nous ferons en sorte de la réparer au plus vite, veuillez réssayer d'envoyer votre sondage.");
|
||||
}
|
||||
else
|
||||
{
|
||||
//Poursuite
|
||||
|
||||
//Récupération de l'ID du sondage
|
||||
$idPersonn_texte = $infos_texte[0]['ID'];
|
||||
|
||||
//Création du sondage
|
||||
insert_sql("sondage", "ID_utilisateurs, ID_texte, date_creation, question", "?, ?, NOW(), ?", $bdd, array($_SESSION['ID'], $idPersonn_texte, $question_sondage));
|
||||
|
||||
$infos_sondage = select_sql("sondage", "ID_utilisateurs = ? AND ID_texte = ? AND question = ? ORDER BY ID DESC", $bdd, array(
|
||||
$_SESSION['ID'],
|
||||
$idPersonn_texte,
|
||||
$question_sondage
|
||||
));
|
||||
|
||||
if(count($infos_sondage) == 0)
|
||||
{
|
||||
//Rapport d'erreur à l'administration
|
||||
report_error('if(count($infos_sondage) == 0)', 'La variable $infos_sondage ne compte aucune entrée, alors qu\'elle devrait en contenir au moins une (permet l\'ajout de sondages) dans addpost.php (inc).');
|
||||
|
||||
//Affichage d'un message d'erreur
|
||||
affiche_message_erreur("Nous avons rencontré une erreur en interne. (Err Sondage Inser 2) L'administration a été informée de cette erreur. Nous ferons en sorte de la réparer au plus vite, veuillez réssayer d'envoyer votre sondage.");
|
||||
|
||||
exit();
|
||||
}
|
||||
|
||||
//Récupération de l'ID du sondage
|
||||
$idPersonn_sondage = $infos_sondage[0]['ID'];
|
||||
|
||||
//Ajout des réponses au sondage
|
||||
$array_reponses = explode("\n", $reponses_sondage);
|
||||
foreach($array_reponses as $traiter)
|
||||
{
|
||||
//Vérification de la réponse
|
||||
if($traiter != "" AND $traiter != " ")
|
||||
{
|
||||
//Ajout du choix à la BDD
|
||||
insert_sql("sondage_choix", "ID_sondage, date_creation, choix", "?, NOW(), ?", $bdd, array($idPersonn_sondage, $traiter));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//Message de succès
|
||||
?><script>affiche_notification_succes("Le sondage a bien été enregistré.");</script><?php
|
||||
}
|
48
inc/pages/homeUser/addPost/controllers/postTextImage.inc.php
Normal file
48
inc/pages/homeUser/addPost/controllers/postTextImage.inc.php
Normal file
@ -0,0 +1,48 @@
|
||||
<?php
|
||||
/**
|
||||
* Post a text or an image
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
//An image does not require a valid text
|
||||
if((isset($_FILES['image'])) AND ($_FILES['image']['error'] == 0))
|
||||
$image = true;
|
||||
else
|
||||
$image = false;
|
||||
|
||||
//On vérifie si le texte n'est pas vide
|
||||
if($_POST['texte'] != "" OR $image)
|
||||
{
|
||||
//Vérification de la validité du post
|
||||
if(verifie_validite_ajout($_POST['texte']) OR $image)
|
||||
{
|
||||
|
||||
//On vérifie si une image est incorporée au post
|
||||
if((isset($_FILES['image'])) AND ($_FILES['image']['error'] == 0))
|
||||
{
|
||||
//Envoi de l'image en ligne
|
||||
envoiimage(($_SESSION['ID'] == $idPersonn ? $_SESSION['ID'] : $idPersonn) , $_POST['texte'], $bdd, ($_SESSION['ID'] == $idPersonn ? 0 : $_SESSION['ID']), $niveau_visibilite);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Ajout du texte
|
||||
if($_SESSION['ID'] == $idPersonn)
|
||||
ajouttexte($_SESSION['ID'], $_POST['texte'], $bdd, $niveau_visibilite);
|
||||
else //Si c'est un amis
|
||||
ajouttexte_amis($_SESSION['ID'], $idPersonn, $_POST['texte'], $bdd, $niveau_visibilite);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//On affiche un message d'erreur
|
||||
?><script type='text/javascript'>affiche_notification_erreur("Votre texte est invalide : pas assez de caractères différents (au minimum 3).", "Erreur", 10);</script><?php
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//On affiche un message d'erreur
|
||||
?><script type='text/javascript'>affiche_notification_erreur("L'ajout de textes vides est interdit !", "Erreur", 10);</script><?php
|
||||
}
|
35
inc/pages/homeUser/addPost/controllers/postVideo.inc.php
Normal file
35
inc/pages/homeUser/addPost/controllers/postVideo.inc.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/**
|
||||
* Post a personnal video
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
if($_POST['idvideo'] != "" && $_POST['niveau_visibilite'] != "")
|
||||
{
|
||||
//On vérifie si il faut prendre la dernière vidéo disponible
|
||||
if($_POST['idvideo'] == "last_one")
|
||||
$_POST['idvideo'] = id_video_plus_recente($_SESSION['ID'], $bdd); //Récupération de l'ID de la vidéo la plus récente
|
||||
|
||||
if(isset_video($_POST['idvideo'], $_SESSION['ID'], $bdd))
|
||||
{
|
||||
if($_POST['niveau_visibilite'] <= 3)
|
||||
{
|
||||
//Ajout de la vidéo
|
||||
if($_SESSION['ID'] == $idPersonn)
|
||||
add_movie($_SESSION['ID'], $_POST['commentaire_video'], $_POST['idvideo'], $bdd, $_POST['niveau_visibilite']);
|
||||
else //Si c'est un amis
|
||||
add_movie($idPersonn, $_POST['commentaire_video'], $_POST['idvideo'], $bdd, $_POST['niveau_visibilite'], $_SESSION['ID']);
|
||||
}
|
||||
else
|
||||
{
|
||||
?><script>affiche_notification_erreur("Il y a une erreur dans votre requête.");</script><?php //Vidéo indisponible
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
?><script>affiche_notification_erreur("La vidéo dmandée n'est pas disponible.");</script><?php //Vidéo indisponible
|
||||
}
|
||||
}
|
54
inc/pages/homeUser/addPost/controllers/postWebLink.inc.php
Normal file
54
inc/pages/homeUser/addPost/controllers/postWebLink.inc.php
Normal file
@ -0,0 +1,54 @@
|
||||
<?php
|
||||
/**
|
||||
* Post a web link
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
//Enregistrement de l'URL
|
||||
$url = $_POST['adresse_page'];
|
||||
$description = ($_POST['texte_lien_page'] != "" ? "<p>".$_POST['texte_lien_page']."</p>" : "");
|
||||
|
||||
//Inclusion de la fonction d'analyse
|
||||
require_once(relativePath_3rdparty('analysing_page/analyser_fr.php'));
|
||||
|
||||
//Contrôle de l'URL
|
||||
if(!preg_match('<http://>', $url) AND !preg_match('<https://>', $url))
|
||||
{
|
||||
echo affiche_message_erreur("L'URL saisie est invalide !"); //L'URL donnée est invalide
|
||||
}
|
||||
else
|
||||
{
|
||||
//On commence par récupérer le code source de l'URL
|
||||
ob_start();
|
||||
$source = file_get_contents($url);
|
||||
ob_end_clean();
|
||||
|
||||
//Contrôle de la source
|
||||
if($source == "")
|
||||
{
|
||||
echo affiche_message_erreur("La page demandée n'a pas été trouvée !"); //Page non trouvée (404)
|
||||
}
|
||||
else
|
||||
{
|
||||
//On peut tenter d'extraire les informations
|
||||
$infos_page = analyse_source_page_extrait_description($source);
|
||||
|
||||
//On prépare l'enregistrement de la page
|
||||
$infos_page['titre'] = ($infos_page['titre'] == null ? "default" : $infos_page['titre']);
|
||||
$infos_page['description'] = ($infos_page['description'] == null ? "default" : $infos_page['description']);
|
||||
$infos_page['image'] = ($infos_page['image'] == null ? "default" : $infos_page['image']);
|
||||
|
||||
//On enregistre la page
|
||||
//Ajout du texte
|
||||
if($_SESSION['ID'] == $idPersonn)
|
||||
ajouttexte($_SESSION['ID'], $description, $bdd, $niveau_visibilite, "webpage_link", "", 0, 0, 0, $url, $infos_page['titre'], $infos_page['description'], $infos_page['image']);
|
||||
else //Si c'est un amis
|
||||
ajouttexte_amis($_SESSION['ID'], $idPersonn, $description, $bdd, $niveau_visibilite, "webpage_link", "", 0, 0, 0, $url, $infos_page['titre'], $infos_page['description'], $infos_page['image']);
|
||||
|
||||
//Message de succès
|
||||
echo "<p><img src='".path_img_asset('succes.png')."' title='Succès' alt='V' /> Le lien vers la page a bien été ajouté.</p>";
|
||||
}
|
||||
}
|
53
inc/pages/homeUser/addPost/controllers/postYouTube.inc.php
Normal file
53
inc/pages/homeUser/addPost/controllers/postYouTube.inc.php
Normal file
@ -0,0 +1,53 @@
|
||||
<?php
|
||||
/**
|
||||
* Post a YouTube video
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
if($_POST['youtube'] != "")
|
||||
{
|
||||
//Exemple d'URL YouTube :
|
||||
// https://www.youtube.com/watch?v=1MBU0yRgBTw
|
||||
|
||||
if(strpbrk($_POST['youtube'], "<https://www.youtube.com/watch?v=>") != false OR strpbrk($_POST['youtube'], "<http://www.youtube.com/watch?v=>") != false)
|
||||
{
|
||||
$adresse = strstr($_POST['youtube'], "watch?v=");
|
||||
|
||||
$adresse = str_replace("watch?v=", "", $adresse);
|
||||
|
||||
if($adresse != "")
|
||||
{
|
||||
//Définition du texte de la vidéo
|
||||
$source = "";
|
||||
|
||||
if($_POST['commentyoutube'] != "")
|
||||
{
|
||||
if(!preg_match('/endof/', $_POST['commentyoutube']))
|
||||
{
|
||||
$source .= $_POST['commentyoutube'];
|
||||
}
|
||||
}
|
||||
|
||||
//Enregistrement de la vidéo
|
||||
//Ajout du texte
|
||||
if($_SESSION['ID'] == $idPersonn)
|
||||
ajouttexte($_SESSION['ID'], $source, $bdd, $niveau_visibilite, "youtube", $adresse);
|
||||
else //Si c'est un amis
|
||||
ajouttexte_amis($_SESSION['ID'], $idPersonn, $source, $bdd, $niveau_visibilite, "youtube", $adresse);
|
||||
|
||||
//Message de succès
|
||||
?><script>affiche_notification_succes("La vidéo a bien été enregistrée.");</script><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
?><script>affiche_notification_erreur("L'adresse de la vidéo YouTube est incorrecte.");</script><?php
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
?><script>affiche_notification_erreur("L'adresse de la vidéo YouTube est incorrecte. Le nom de domaine ou l'URL est incorrecte.");</script><?php
|
||||
}
|
||||
}
|
225
inc/pages/homeUser/addPost/views/v_addPost.inc.php
Normal file
225
inc/pages/homeUser/addPost/views/v_addPost.inc.php
Normal file
@ -0,0 +1,225 @@
|
||||
<?php
|
||||
/**
|
||||
* Add post main view
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
?><font class="metro">
|
||||
<div class="tab-control" data-role="tab-control" id="tabs_form_add">
|
||||
<ul class="tabs" onmouseover="$('#tabs_form_add').tabcontrol();">
|
||||
<li class="active"><a href="#_page_1">Texte / <i class="icon-pictures"></i></a></li>
|
||||
<li><a href="#_youtube_add"><img src="<?php echo path_img_asset('logo-youtube.png'); ?>" height="16px"></a></li>
|
||||
<li id='tab_add_a_movie'><a href="#_movie_add"><i class="icon-film"></i></a></li>
|
||||
<li><a href="#_webpage_add"><i class="icon-link"></i></a></li>
|
||||
<li id="tab_add_a_pdf"><a href="#_post_with_pdf_add"><i class="icon-file-pdf"></i></a></li>
|
||||
<li><a href="#_count_down_add" onClick='$("#datepicker").datepicker();'><i class="icon-alarm-clock"></i></a></li>
|
||||
<li><a href="#_sondage_add" ><i class="icon-pie"></i></a></li>
|
||||
</ul>
|
||||
|
||||
<div class="frames">
|
||||
<div class="frame" id="_page_1">
|
||||
<div class="ajout_post">
|
||||
<div id="button_form_ajout_simple">
|
||||
<button class="command-button info" onClick="document.getElementById('button_form_ajout_simple').style.display = 'none'; document.getElementById('form_ajout_simple').style.display = 'block';">
|
||||
<i class="icon-plus on-left"></i>
|
||||
Ajouter un post
|
||||
<small>Cliquez ici afin d'ajouter un post</small>
|
||||
</button>
|
||||
</div>
|
||||
<div id="form_ajout_simple" style="display: none; height: 316px;">
|
||||
<!-- Ajout simple -->
|
||||
<form action='<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $idPersonn; ?>' method='post' enctype='multipart/form-data'>
|
||||
<p>Image (optionelle) : <input type='file' class='filenouvimage' name='image' /></p>
|
||||
|
||||
<textarea name='texte' id='ajoutsimple'></textarea><br />
|
||||
|
||||
<!-- Niveau de visibilité -->
|
||||
<?php choisir_niveau_visibilite(); ?>
|
||||
<!-- Fin de: Niveau de visibilité -->
|
||||
|
||||
<!-- Boutons de validation -->
|
||||
<input type='submit' value='<?php echo $lang[32]; ?>' />
|
||||
<!-- Fin de: Boutons de validation -->
|
||||
|
||||
<!-- TinyMCE -->
|
||||
<?php echo code_inc_js(path_js_asset('ajoutsimple.js')); ?>
|
||||
<!-- /TinyMCE -->
|
||||
</form>
|
||||
<!-- Fin de: ajout simple -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="frame" id="_youtube_add">
|
||||
Ajout d'une vidéo Youtube
|
||||
<p>Pour ajouter une vidéo YouTube sur votre page, veuillez copier son adresse web puis la coller dans le champs ci-dessous.</p>
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $idPersonn; ?>" method="post">
|
||||
<input type="text" name="youtube" />
|
||||
<p>Vous pouvez également ajouter un petit commentaire pour vos amis....</p>
|
||||
<input type="text" name="commentyoutube" />
|
||||
<p>Une fois que vous êtes prêt, cliquez sur Ajouter.</p>
|
||||
|
||||
<!-- Niveau de visibilité -->
|
||||
<?php choisir_niveau_visibilite(); ?>
|
||||
<!-- Fin de: Niveau de visibilité -->
|
||||
|
||||
<!-- Bouton de validation -->
|
||||
<p><input type="submit" value="Ajouter" /></p>
|
||||
<!-- Fin de : Bouton de validation -->
|
||||
</form>
|
||||
</div>
|
||||
<div class="frame" id="_movie_add">
|
||||
<form action='<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $idPersonn; ?>' method='post' name="Envoi d'une video">
|
||||
Envoi d'une vidéo personnelle
|
||||
<div style="text-align: center;" class="metro"><input type="button" value="Envoi d'une vidéo" onclick="ouvre_fenetre_upload_video();" /></div>
|
||||
<?php
|
||||
//Listing de toute les vidéos disponibles
|
||||
//Listage de l'ensemble des vidéos
|
||||
$liste_video = liste_videos_user($_SESSION['ID'], $bdd);
|
||||
|
||||
//Affichage de la liste
|
||||
echo "<div class='list_choix_video'>";
|
||||
echo "<input type='radio' name='idvideo' checked value='last_one' /> La plus récente <br />"; //Proposition de lecture de la vidéo la plus récente
|
||||
foreach($liste_video as $view)
|
||||
{
|
||||
echo "<input type='radio' name='idvideo' value='".$view['ID']."' /> ".corrige_caracteres_speciaux(corrige_accent_javascript($view['nom_video']))."<br />";
|
||||
}
|
||||
echo "</div>";
|
||||
?>
|
||||
|
||||
<textarea name="commentaire_video" placeholder="Commentaire sur la vidéo..."></textarea>
|
||||
|
||||
<!-- Niveau de visibilité -->
|
||||
<?php choisir_niveau_visibilite(); ?>
|
||||
<!-- Fin de: Niveau de visibilité -->
|
||||
|
||||
<!-- Bouton de validation -->
|
||||
<p><input type="submit" value="Ajouter" /></p>
|
||||
<!-- Fin de : Bouton de validation -->
|
||||
|
||||
<p>Note : Lorsque vous envoyez une vidéo, vous prenez la responsabilité du contenu envoyé. En cas de violation de droit d'auteur, vous serez désigné responsable du vol. Veillez donc à ne pas envoyer de vidéos susceptibles d'être protégée par droit d'auteur. <a href="http://192.168.1.5/divers/comunic/about.php?cgu" target="_blank"> Référez-vous au conditions d'utilisation pour de plus amples informations. </a></p>
|
||||
<p>Si vous n'arrivez pas à envoyer une vidéo à cause de son poids trop élevé, nous vous recommandons de la poster sur YouTube puis de l'intégrer à Comunic.</a></p>
|
||||
</form>
|
||||
</div>
|
||||
<div class="frame" id="_webpage_add">
|
||||
<p>Ajout d'un lien vers une page web</p>
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $idPersonn; ?>" method="post" name="Envoi d'un lien vers une URL">
|
||||
<div class="input-control text size4">
|
||||
<input type="text" name="adresse_page" value="" placeholder="URL de la page"/>
|
||||
</div>
|
||||
<div class="input-control text size4">
|
||||
<input type="text" name="texte_lien_page" value="" placeholder="Commentaire personnel"/>
|
||||
</div>
|
||||
|
||||
<!-- Niveau de visibilité -->
|
||||
<?php choisir_niveau_visibilite(); ?>
|
||||
<!-- Fin de: Niveau de visibilité -->
|
||||
|
||||
<!-- Bouton de validation -->
|
||||
<p><input type="submit" value="Ajouter" /></p>
|
||||
<!-- Fin de : Bouton de validation -->
|
||||
|
||||
<!-- Propostion d'ajout aux favoris -->
|
||||
<p>
|
||||
Vous pouvez également ajouter ce lien dans vos favoris en le glissant sur votre liste de favoris afin de pouvoir partager plus facilement des pages web : <br />
|
||||
<a href="javascript:(function(){%20window.open('<?php echo $urlsite; ?>share.php?address=referer',%20'share_comunic',%20'width=600px,height=520px');%20})();" title="Partager sur Comunic">Partager sur Comunic</a>
|
||||
</p>
|
||||
<!-- Fin de: Propostion d'ajout aux favoris -->
|
||||
</form>
|
||||
</div>
|
||||
<div class="frame" id="_post_with_pdf_add">
|
||||
<p>Envoi d'un pdf</p>
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $idPersonn; ?>" method="post" name="Envoi d'un post avec un PDF" enctype="multipart/form-data">
|
||||
<input type="file" name="fichier_pdf" value="Choix du fichier PDF"/>
|
||||
<div class="input-control text size4">
|
||||
<input type="text" name="texte_post_with_pdf" value="" placeholder="Commentaire personnel"/>
|
||||
</div>
|
||||
|
||||
<!-- Niveau de visibilité -->
|
||||
<?php choisir_niveau_visibilite(); ?>
|
||||
<!-- Fin de: Niveau de visibilité -->
|
||||
|
||||
<!-- Bouton de validation -->
|
||||
<p><input type="submit" value="Envoyer" /></p>
|
||||
<!-- Fin de : Bouton de validation -->
|
||||
|
||||
<!-- Rappel sur les copyright -->
|
||||
<p>
|
||||
<u>Note :</u> Vous êtes responsables des contenus que vous envoyez sur Comunic. Ceux-ci ne doivent pas être protégés par droits d'auteur.
|
||||
</p>
|
||||
<!-- Fin de: Rappel sur les copyright -->
|
||||
</form>
|
||||
</div>
|
||||
<div class="frame" id="_count_down_add">
|
||||
<form action='<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $idPersonn; ?>' method='post' name="Envoi d'un evenement">
|
||||
Ajout d'un événement avec un compteur à rebours
|
||||
<div style="text-align: center;" class="metro">
|
||||
|
||||
<!-- Choix de la date -->
|
||||
<div class="input-control text size3" id="datepicker">
|
||||
<input name="date" type="text" required placeholder="Cliquez ici pour choisir la date...">
|
||||
</div>
|
||||
<!-- Fin de: Choix de la date -->
|
||||
|
||||
<!-- Nom de l'événement -->
|
||||
<br /><div class="input-control text size4">
|
||||
<input type="text" name="nom_evenement" value="" placeholder="Nom de l'événement"/>
|
||||
</div>
|
||||
<!-- Fin de: Nom de l'événement -->
|
||||
|
||||
<!-- Niveau de visibilité -->
|
||||
<?php choisir_niveau_visibilite(); ?>
|
||||
<!-- Fin de: Niveau de visibilité -->
|
||||
|
||||
<!-- Bouton de validation -->
|
||||
<p><input type="submit" value="Ajouter" /></p>
|
||||
<!-- Fin de : Bouton de validation -->
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<!-- Création d'un sondage -->
|
||||
<div class="frame metro" id="_sondage_add">
|
||||
<form action='<?php echo $_SERVER['PHP_SELF']; ?>?id=<?php echo $idPersonn; ?>' method='post' name="Envoi d'un sondage">
|
||||
Création d'un sondage
|
||||
|
||||
<!-- Question du sondage -->
|
||||
<br /><div class="input-control text size3">
|
||||
<input type="text" name="question_sondage" value="" placeholder="Question du sondage"/>
|
||||
</div>
|
||||
<!-- Fin de: Question du sondage -->
|
||||
|
||||
<!-- Réponses au sondage -->
|
||||
<p>Choix du sondage</p>
|
||||
<div class="input-control textarea">
|
||||
<textarea name="reponses_sondage"><?php
|
||||
//Réponses au sondage par défaut
|
||||
echo "Choix 1\nChoix 2";
|
||||
?></textarea>
|
||||
</div>
|
||||
<p>Veuillez effectuer un retour à la ligne à chaque nouvelle réponse</p>
|
||||
<!-- Fin de: Réponses au sondage -->
|
||||
|
||||
|
||||
<!-- Commentaire du sondage -->
|
||||
<p>Commentaire du sondage (optionnel)</p>
|
||||
<div class="input-control textarea">
|
||||
<textarea name="commentaire_sondage"></textarea>
|
||||
</div>
|
||||
<!-- Fin de: Commentaire au sondage -->
|
||||
|
||||
<!-- Niveau de visibilité -->
|
||||
<?php choisir_niveau_visibilite(); ?>
|
||||
<!-- Fin de: Niveau de visibilité -->
|
||||
|
||||
<!-- Bouton de validation -->
|
||||
<p><input type="submit" value="Créer le sondage" /></p>
|
||||
<!-- Fin de : Bouton de validation -->
|
||||
</form>
|
||||
</div>
|
||||
<!-- Fin de: Création d'un sondage -->
|
||||
</div>
|
||||
</div>
|
||||
</font>
|
158
inc/pages/homeUser/editPost/editPost.inc.php
Executable file
158
inc/pages/homeUser/editPost/editPost.inc.php
Executable file
@ -0,0 +1,158 @@
|
||||
<?php
|
||||
/**
|
||||
* Text editing page
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
//Security
|
||||
include(websiteRelativePath('securite.php'));
|
||||
|
||||
//On v<>rifie si il y a une demande d'<27>dit de post
|
||||
if(!isset($_GET['id']))
|
||||
{
|
||||
//Redirection vers la page d'acceuil
|
||||
header('location: index.php');
|
||||
|
||||
//On quitte la page
|
||||
exit();
|
||||
}
|
||||
|
||||
//Getting post ID
|
||||
$id_texte = $_GET['id']*1;
|
||||
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Edition du post</title>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
</head>
|
||||
<body class="metro">
|
||||
<?php include(pagesRelativePath('common/pageTop.php')); ?>
|
||||
<h1 class="titre">Edition d'un post</h1>
|
||||
<?php
|
||||
//On recherche le post
|
||||
$sql = "SELECT * FROM texte WHERE ID = ? AND (ID_personne = ? || ID_amis = ?)";
|
||||
|
||||
//SQL -> ex<65>cution de la requ<71>te
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($id_texte, $_SESSION['ID'], $_SESSION['ID']));
|
||||
|
||||
//On v<>rifie si la demande est correcte
|
||||
ob_start();
|
||||
if(!$afficher_texte = $requete->fetch())
|
||||
{
|
||||
//Fin de l'interruption de l'envoi des donn<6E>es
|
||||
ob_end_clean();
|
||||
|
||||
//On affiche un message d'erreur
|
||||
?><table><tr><td><img src="img/erreur.png" title="Erreur"></td><td>Le message demandé ne peut pas être édité. Causes les plus probables : vous ne disposez pas des autorisations nécessaires ou le message n'existe plus. <a href="contact.php">Contactez-nous</a> pour plus d'informations.</td></tr></table><?php
|
||||
|
||||
//On arr<72>te le chargement de la page
|
||||
exit();
|
||||
}
|
||||
ob_end_clean();
|
||||
|
||||
if(preg_match('/endof/', $afficher_texte['texte']))
|
||||
{
|
||||
?><script>alert("Les images qui ont <20>t<EFBFBD> post<73>es ne peuvent pas <20>tre modifi<66>es.");</script><?php
|
||||
?><input type="button" onClick="javascript:history.back(1)" value="Retour <20> la page pr<70>c<EFBFBD>dente" /><?php
|
||||
|
||||
//On quitte le script courant
|
||||
exit();
|
||||
}
|
||||
|
||||
//On v<>rifie si la demande a d<>j<EFBFBD> <20>t<EFBFBD> post<73>e
|
||||
if(isset($_POST['message']))
|
||||
{
|
||||
if($_POST['message'] != "")
|
||||
{
|
||||
if(preg_match('/endof/', $_POST['message']))
|
||||
{
|
||||
?><script>alert("Votre demande de modification n'a pas pu <20>tre re<72>ue car elle pr<70>sente un important probl<62>me de s<>curit<69>.");</script><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<p>Application de la modification</p>";
|
||||
|
||||
//SQL -> requ<71>te de modification
|
||||
$sql = "UPDATE texte SET texte = ? WHERE ( ID = ? AND (ID_personne = ? || ID_amis = ?))";
|
||||
|
||||
//SQL-> ex<65>cution de la requ<71>te
|
||||
$update = $bdd->prepare($sql);
|
||||
$update->execute(array($_POST['message'], $id_texte, $_SESSION['ID'], $_SESSION['ID']));
|
||||
|
||||
//Si il y a un sondage dans le texte
|
||||
if(isset($_POST['question_sondage']))
|
||||
{
|
||||
$question_sondage = $_POST['question_sondage'];
|
||||
|
||||
//Si il y a une requ<71>te de modification de la question du sondage
|
||||
if($question_sondage != "")
|
||||
{
|
||||
//Mise <20> jour de la question du sondage
|
||||
update_sql("sondage", "question = ?", "ID_utilisateurs = ? AND ID_texte = ?", $bdd, array($question_sondage, $_SESSION['ID'], $id_texte));
|
||||
}
|
||||
}
|
||||
|
||||
//Messsage de succ<63>s
|
||||
echo "<p>Application de la modification terminée.</p>";
|
||||
echo "<p><a href='index.php'>Retour à votre page d'acceuil</a></p>";
|
||||
|
||||
//On v<>rifie si une redirection automatique est possible
|
||||
if(isset($_GET['iduser']))
|
||||
{
|
||||
echo "<p>Redirection automatique en cours...</p>";
|
||||
?><meta http-equiv="refresh" content="0;URL=index.php?id=<?php echo $_GET['iduser'].(isset($_GET['page']) ? "&page=".$_GET['page'] : "" ); ?>"><?php
|
||||
}
|
||||
|
||||
//Fermeture du script courant
|
||||
exit();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Inclusion de TinyMce
|
||||
include(relativePath_assets('html/tinymce.html'));
|
||||
|
||||
//Affichage de l'<27>diton du message
|
||||
echo "<form action='editpost.php?id=".$afficher_texte['ID'].(isset($_GET['iduser']) ? "&iduser=".$_GET['iduser'] : "" ).(isset($_GET['page']) ? "&page=".$_GET['page'] : "" )."' method='post'>";
|
||||
echo "<table style='text-align: center; margin: auto;'>";
|
||||
echo "<tr><td>";
|
||||
echo "<textarea name='message' id='textarea'>".$afficher_texte['texte']."</textarea>";
|
||||
//echo "<p>L'<27>dition ne peut temporairement pas aboutir. Veuillez nous excuser du d<>sagr<67>ment encouru.</p>"; //Bug ou d<>veloppement SELEUMENT, ce message peut pertuber l'utilisateur final.
|
||||
echo "</td></tr>";
|
||||
|
||||
if($afficher_texte['type'] == "sondage")
|
||||
{
|
||||
//On r<>cup<75>re les informations sur le sondage
|
||||
$infos_sondage = get_sondage_by_text_id($afficher_texte['ID'], $bdd);
|
||||
|
||||
if(!$infos_sondage)
|
||||
echo "<p><b>Une erreur temporaire empêche de modifier le sondage rattaché au texte.</b></p>";
|
||||
else
|
||||
{
|
||||
?><tr>
|
||||
<td>
|
||||
<label>Question du sondage : </label>
|
||||
<div class="input-control text">
|
||||
<input type="text" name="question_sondage" value="<?php echo $infos_sondage[0]['question']; ?>" />
|
||||
</div>
|
||||
</td>
|
||||
</tr><?php
|
||||
}
|
||||
}
|
||||
|
||||
echo "<tr><td>";
|
||||
echo "<input type='submit' value='Modifier' />";
|
||||
echo "</td></tr>";
|
||||
echo "</table>";
|
||||
echo "</form>";
|
||||
?>
|
||||
|
||||
<hr /><?php
|
||||
//Pieds de page
|
||||
include(pagesRelativePath('common/pageBottom.php'));
|
||||
?>
|
||||
</body>
|
||||
</html>
|
149
inc/pages/homeUser/homeUser.inc.php
Normal file
149
inc/pages/homeUser/homeUser.inc.php
Normal file
@ -0,0 +1,149 @@
|
||||
<?php
|
||||
/**
|
||||
* User's home
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
isset($_SESSION) OR exit('Invalid call! - homeUser.inc.php');
|
||||
|
||||
//En-tête autorisé par défaut
|
||||
$allow_entete = true;
|
||||
|
||||
//Vérification de l'existence de la demande d'un autre profil
|
||||
if(isset($_GET['id']))
|
||||
{
|
||||
$id = $_GET['id']*1; //Sécurité
|
||||
}
|
||||
else
|
||||
{
|
||||
//Sinon on prend la page de la personne
|
||||
//$id = $_SESSION['ID'];
|
||||
//Fil d'actualité
|
||||
$id = "fil";
|
||||
|
||||
//Désactivation de l'en-tête
|
||||
$allow_entete = false;
|
||||
$page_fil = true;
|
||||
|
||||
if($afficher['vu_message_info_fil'] == 0)
|
||||
{
|
||||
?><script type="text/javascript">
|
||||
$.Dialog({
|
||||
overlay: true,
|
||||
shadow: true,
|
||||
draggable: true,
|
||||
flat: true,
|
||||
icon: '<span class="icon-newspaper"></span>',
|
||||
title: 'Voici le fil d\'actualité',
|
||||
content: '<p>Avec le fil d\'actualité, vous pouvez voir les dernières publications auxquelles vous avez accès.</p> <br /><br /><br />' +
|
||||
'<div style="text-align: right; margin-right: 5px;"><button class="button primary" type="button" onclick="$.Dialog.close(); ajax_rapide(\'action.php?actionid=35\');">C\'est parti !</button></div>',
|
||||
});
|
||||
</script><?php
|
||||
}
|
||||
}
|
||||
|
||||
//Correction de l'erreur de certains scripts appelés
|
||||
$_GET['id'] = $id;
|
||||
|
||||
//Récupération des informations sur la personne
|
||||
$afficher = cherchenomprenom($id, $bdd);
|
||||
|
||||
//Définition de la variable de stockage des informations sur les utilisateurs
|
||||
$info_users = array();
|
||||
$info_users[$id]['table_utilisateurs'] = $afficher;
|
||||
$info_users[$id]['avatar_32_32'] = avatar($id, "./", 32, 32);
|
||||
|
||||
//Modification du titre de la page au nom de la personne
|
||||
?><script type="text/javascript">
|
||||
//Changement du titre de la page au nom de la personne
|
||||
document.title = "<?php echo $afficher['prenom']." ".$afficher['nom']; ?> - Comunic";
|
||||
</script>
|
||||
<?php
|
||||
|
||||
?>
|
||||
<div class='contenupage'>
|
||||
<div id="header_contenu" contextmenu="header_page">
|
||||
<?php
|
||||
//En-tête si autorisé
|
||||
if($allow_entete)
|
||||
{
|
||||
//Récupération du statut de l'abonnement à la personne
|
||||
$header_page_ok = true;
|
||||
include('inc/header_page.php');
|
||||
?><script type="text/javascript">get_abonnement(<?php echo $id; ?>, 0);</script><?php
|
||||
}
|
||||
|
||||
?></div>
|
||||
<?php
|
||||
//La suite ne s'affiche que si c'est un amis
|
||||
if(isset($non_amis))
|
||||
{
|
||||
//On vérifie si la page est non publique
|
||||
if ($afficher['public'] == 0)
|
||||
{
|
||||
//On bloque le reste du chargment de la page
|
||||
echo '<div id="add_form_texte"></div><p>'.$afficher['prenom']." ".$afficher['nom']." refuse que vous voyez sa page sans etre son amis.</p> <p>Vous pouvez lui envoyer une demande pour devenir son ami ci-dessus.</p></table></div></body></html>";
|
||||
echo '<hr />';
|
||||
include(pagesRelativePath('common/pageBottom.php'));
|
||||
die();
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
//Inclusion du script pour l'ajout de posts
|
||||
echo "<div id='add_form_texte'>";
|
||||
if(!isset($_GET['post']) AND isset($_SESSION['ID']))
|
||||
include('inc/pages/homeUser/addPost/addpost.inc.php');
|
||||
echo "</div>";
|
||||
?>
|
||||
<table align='center' class='corpstextes' id="corpstexte">
|
||||
<?php
|
||||
|
||||
//On vérifie si il s'agit d'une page supérieur à la page 1
|
||||
if(isset($_GET['page']))
|
||||
{
|
||||
if($_GET['page'] > 0)
|
||||
{
|
||||
echo "<tr><td></td><td>";
|
||||
|
||||
if($_GET['page'] !== '1')
|
||||
{
|
||||
$pageprecedent = $_GET['page'] - 1;
|
||||
|
||||
echo "<a href='index.php?id=".$id."&page=".$pageprecedent."'><input class='retourpageprincipale' type='button' value=\"".$lang[53]."\" /></a>";
|
||||
}
|
||||
|
||||
echo "<a href='index.php?id=".$id."'><input class='retourpageprincipale' type='button' value=\"".$lang[52]."\" /></a>";
|
||||
|
||||
$page = $_GET['page']*1;
|
||||
echo "</td></tr>";
|
||||
}
|
||||
else
|
||||
{
|
||||
$page = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$page = 0;
|
||||
}
|
||||
|
||||
//Définition de la requête AJAX de recherche de textes
|
||||
$ok_textes_check = "source:index.php";
|
||||
$_GET['id'] = $id;
|
||||
$_GET['page'] = $page;
|
||||
$no_view_more = true;
|
||||
include('viewTexts/viewTexts.inc.php');
|
||||
|
||||
if(!isset($_GET['post']))
|
||||
echo '<tr class="metro"><td colspan="2"><input value="Afficher plus de textes" onclick="get_show_textes('.$id.', \'corpstexte\', '.($page+1).', 0); this.parentNode.parentNode.style.display = \'none\'" type="button"></td></tr>';
|
||||
|
||||
//Fermeture du tableau
|
||||
?></table><?php
|
||||
|
||||
|
||||
//Fermeture de la balise <div>
|
||||
echo "</div>";
|
||||
|
||||
//Inclusion du pied de page
|
||||
include(pagesRelativePath('common/pageBottom.php'));
|
717
inc/pages/homeUser/viewTexts/viewTexts.inc.php
Executable file
717
inc/pages/homeUser/viewTexts/viewTexts.inc.php
Executable file
@ -0,0 +1,717 @@
|
||||
<?php
|
||||
isset($_SESSION) OR exit("Invalid call - viewTexts.inc.php");
|
||||
|
||||
//Vérification de la présence des variables requises
|
||||
if(!isset($_GET['id']))
|
||||
die("Missing arguments !");
|
||||
|
||||
// Si c'est un appel AJAX pour le fil d'actualité
|
||||
if($_GET['id'] == "0")
|
||||
{
|
||||
$_GET['id'] = "fil";
|
||||
$id = 0;
|
||||
}
|
||||
else
|
||||
//Getting personn's ID
|
||||
$id = $_GET['id']*1;
|
||||
|
||||
//Définition du numéro de page
|
||||
$numero_page = (isset($_GET['page']) ? $_GET['page']*1 : 0);
|
||||
|
||||
//On vérifie si la personne est autorisée à visualiser la page
|
||||
$niveau_visibilite_autorise = is_allowed_to_view_page($id, $bdd);
|
||||
|
||||
//On vérifie si la liste des smiley a bien été chargée
|
||||
if(!isset($liste_smiley))
|
||||
{
|
||||
//Inclusion de la liste des smiley
|
||||
include('liste_smile.php');
|
||||
}
|
||||
|
||||
//On vérifie si la personne est autorisée à visualiser la page
|
||||
if(!$niveau_visibilite_autorise)
|
||||
{
|
||||
//On vérifie si l'utilisateur est connecté
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
die('<p>'.corrige_caracteres_speciaux(return_nom_prenom_user($id, $bdd))." refuse que vous voyez sa page sans être son amis.</p> <p>Vous pouvez lui envoyer une demande pour devenir son ami ci-dessus.</p>");
|
||||
}
|
||||
else
|
||||
die("Vous n'êtes pas autorisés à voir le contenu de cette page.");
|
||||
}
|
||||
|
||||
//Si il s'agit du fil, on restreint au niveau des amis
|
||||
if($_GET['id'] == "fil")
|
||||
{
|
||||
$niveau_visibilite_autorise = 2; //Niveau arbitraire
|
||||
}
|
||||
|
||||
//On vérifie si l'utilisateur appartient à un des groupes du propriétaire de la page
|
||||
$liste_groupes = (isset($_SESSION['ID']) ? search_appartenance_groupes($id, $_SESSION['ID'], $bdd) : array());
|
||||
|
||||
//Détermination des informations de la personne
|
||||
$afficher = cherchenomprenom($id, $bdd);
|
||||
|
||||
//Définition de la variable de stockage des informations sur les utilisateurs
|
||||
$info_users = array();
|
||||
$info_users[$id]['table_utilisateurs'] = $afficher;
|
||||
$info_users[$id]['avatar_32_32'] = avatar($id, "./", 32, 32);
|
||||
|
||||
//Définition de l'id de la personne de recherche
|
||||
$id_personne_recherche = $id;
|
||||
|
||||
//On vérifie si il s'agit du fil d'actualité
|
||||
if($_GET['id'] == "fil")
|
||||
{
|
||||
//On vérifie si l'utilisateur est connecté
|
||||
if(!isset($_SESSION['ID']))
|
||||
die("Le fil d'actualité n'est pas encore accessible aux personnes non connectées.");
|
||||
|
||||
//Récupération de la liste des amis
|
||||
$liste_amis = liste_amis($_SESSION['ID'], $bdd);
|
||||
|
||||
$complement_personnes = " OR ID_Personne = ".implode($liste_amis, " OR ID_Personne = ");
|
||||
|
||||
$id_personne_recherche = $_SESSION['ID']." ".$complement_personnes;
|
||||
}
|
||||
|
||||
//On vérifie si il faut recharger tous les textes ultérieurs ou non ainsi que si il faut chercher un post précis
|
||||
if(isset($_GET['post']))
|
||||
{
|
||||
//Contrôle de sécurité
|
||||
$num_post = $_GET['post']*1;
|
||||
if($num_post <= 0)
|
||||
{
|
||||
die('valeur incorrecte');
|
||||
}
|
||||
|
||||
//Recherche du texte précis
|
||||
$textes = affichertextes($id_personne_recherche, $bdd, false, false, $niveau_visibilite_autorise, false, $num_post, $liste_groupes);
|
||||
|
||||
//On compte le nombre de textes dont dispose l'utilisateur
|
||||
$sql = "SELECT COUNT(*) AS nb_textes FROM texte WHERE ID_personne = ? AND niveau_visibilite <= ? AND ID >= ?";
|
||||
|
||||
//Exécution de la requête
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($id_personne_recherche, $niveau_visibilite_autorise, $num_post));
|
||||
|
||||
//On enregistre le résultat
|
||||
if(!$enregistrer = $requete->fetch())
|
||||
$fatal_error = true;
|
||||
|
||||
//Fermeture de la requête
|
||||
$requete->closeCursor();
|
||||
|
||||
//On vérifie si il y a une erreur
|
||||
if(isset($fatal_error))
|
||||
die("Une erreur a survenue, merci de réessayer ultérieurement.");
|
||||
|
||||
//On divise la valeur par 10
|
||||
$nb_pages = floor($enregistrer['nb_textes']/10);
|
||||
|
||||
if($enregistrer['nb_textes'] == $nb_pages*10)
|
||||
$nb_pages--;
|
||||
|
||||
$numero_page = $nb_pages;
|
||||
$_GET['page'] = $nb_pages;
|
||||
|
||||
echo "<tr><td><a class='a' onClick='open_page_ameliore(".$id.");'>Retour à la page principale</a></td></tr>";
|
||||
}
|
||||
elseif(!isset($_GET['reload']))
|
||||
{
|
||||
//Recherche des textes demandés
|
||||
$textes = affichertextes($id_personne_recherche, $bdd, $numero_page*10, 10, $niveau_visibilite_autorise, false, false, $liste_groupes);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Recherche de tous les textes de la personne (jusqu'à la page actuelle)
|
||||
$textes = affichertextes($id_personne_recherche, $bdd, 0, $numero_page*10 + 10, $niveau_visibilite_autorise, false, false, $liste_groupes);
|
||||
}
|
||||
|
||||
if(count($textes) == 0)
|
||||
{
|
||||
if($numero_page != 0)
|
||||
{
|
||||
echo "<p>Il n'y a plus de texte à afficher.</p>";
|
||||
}
|
||||
elseif(isset($_SESSION['ID']))
|
||||
{
|
||||
if($id != $_SESSION['ID'] OR isset($_GET['reload']) OR isset($_GET['post']))
|
||||
{
|
||||
echo "<tr><td><img src='img/erreur.png' title='Avertissement' /></td><td><p>".$lang[51]."</p></td></tr></table>";
|
||||
echo "</div>";
|
||||
|
||||
if($ok_textes_check != "source:index.php")
|
||||
die();
|
||||
}
|
||||
else
|
||||
{
|
||||
?><tr><td><div class="no_texte">
|
||||
<?php echo code_inc_img(path_img_asset('add_text.gif')); ?>
|
||||
<span class="titre_no_texte">Bienvenue dans Comunic !</span><br />
|
||||
<p>Vous n'avez pas encore ajouté de texte sur votre page. Vous pouvez, si vous souhaitez vous manifester dès maintenant, en ajouter depuis le formulaire ci-dessus. Par quoi allez-vous commencer ? Un texte simple, une image, une vidéo de votre cru ou de Youtube ou encore un compteur à rebours ? Vous avez le choix ! N'oubliez pas, après cela, de rechercher vos amis qui se sont déjà inscrit sur le site ! Bonne route dans Comunic, le nouveau moyen de communication !</p>
|
||||
</div></td></tr><?php
|
||||
|
||||
if($ok_textes_check != "source:index.php")
|
||||
die();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if($ok_textes_check != "source:index.php")
|
||||
die();
|
||||
}
|
||||
}
|
||||
|
||||
//On prépare l'affichage des résultats
|
||||
$afficherfond = 1;
|
||||
|
||||
//Affichage des résultats
|
||||
for($i = 0; isset($textes[$i]); $i++)
|
||||
{
|
||||
$afficherresultats = $textes[$i];
|
||||
|
||||
if($afficherresultats['ID_amis'] != 0)
|
||||
{
|
||||
//C'est l'ami qui a mis le post
|
||||
$id_posteur = $afficherresultats['ID_amis'];
|
||||
|
||||
//On vérifie si on connait les informations sur cette personne
|
||||
if(!isset($info_users[$id_posteur]['table_utilisateurs']))
|
||||
{
|
||||
$info_users[$id_posteur]['table_utilisateurs'] = cherchenomprenom($afficherresultats['ID_amis'], $bdd);
|
||||
$info_users[$id_posteur]['avatar_32_32'] = avatar($id_posteur, "./", 32, 32);
|
||||
}
|
||||
|
||||
//C'est un amis qui a posté le texte
|
||||
$infoami = $info_users[$afficherresultats['ID_amis']]['table_utilisateurs'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$id_posteur = $afficherresultats['ID_personne']; //C'est le possesseur de la page qui a posté le texte
|
||||
|
||||
//On vérifie si on connait les informations sur cette personne
|
||||
if(!isset($info_users[$id_posteur]['table_utilisateurs']))
|
||||
{
|
||||
$info_users[$id_posteur]['table_utilisateurs'] = cherchenomprenom($id_posteur, $bdd);
|
||||
$info_users[$id_posteur]['avatar_32_32'] = avatar($id_posteur, "./", 32, 32);
|
||||
}
|
||||
}
|
||||
|
||||
if($_GET['id'] == "fil")
|
||||
{
|
||||
//C'est un amis qui a posté le texte
|
||||
$infoami = $info_users[$id_posteur]['table_utilisateurs'];
|
||||
}
|
||||
|
||||
?>
|
||||
<tr class="separateur_texte"><td> </td></tr>
|
||||
<tr class='post <?php if($afficherfond == 1) {echo "texte_bg_grey"; } ?>'>
|
||||
<td class="td_left">
|
||||
<?php
|
||||
//Recherche de l'avatar de la personne
|
||||
echo $info_users[$id_posteur]['avatar_32_32'];
|
||||
|
||||
echo corrige_caracteres_speciaux((isset($infoami) ? "<span onClick='change_page_personne(".$infoami['ID'].");'>".$infoami['prenom']." ".$infoami['nom']."</span>" : $afficher['prenom']." ".$afficher['nom']));
|
||||
|
||||
//Uniquement si l'utilisateur est connecté
|
||||
if (isset($_SESSION['ID']))
|
||||
{
|
||||
//On vérifie si l'utilisateur est autorisé à supprimer le texte
|
||||
if($id == $_SESSION['ID'] || (isset($infoami['ID']) ? ($infoami['ID'] == $_SESSION['ID'] ? true : false) : false) )
|
||||
{
|
||||
//On vérifie d'abord l'existence d'une demande de suppression de texte
|
||||
if(isset($_GET['suppidtxt']))
|
||||
{
|
||||
if($afficherresultats['ID'] == $_GET['suppidtxt'])
|
||||
{
|
||||
|
||||
//On supprime le texte
|
||||
deletetexte($afficherresultats['ID'], $afficherresultats['texte'], $bdd, $afficherresultats);
|
||||
|
||||
//On redirige vers la meme page pour éviter les collisions
|
||||
echo "Suppression terminée, redirection en cours....<br />";
|
||||
echo '<meta http-equiv="refresh" content="0;URL=index.php?id='.$id.'">';
|
||||
die();
|
||||
}
|
||||
}
|
||||
|
||||
//La personne est autorisée à supprimer ou modifier le texte (la modification du texte doit être réservée uniquement à celui qui a posté le texte)
|
||||
echo " <a onClick='confirmaction(\"action.php?actionid=29&id=".$id;
|
||||
echo "&page=".$numero_page;
|
||||
echo "&suppidtxt=".$afficherresultats['ID']."\", \"".$lang[49]."\");'>";
|
||||
echo code_inc_img(path_img_asset('supp.png'), "Supprimer le texte", "16", "16");
|
||||
echo "</a>";
|
||||
|
||||
//On affiche le lien d'édition de post uniquement si l'utilisateur est le posteur du texte
|
||||
if($afficherresultats['ID_amis'] != 0 ? ($_SESSION['ID'] == $afficherresultats['ID_amis'] ? true : false) : true)
|
||||
echo "<a href='editpost.php?id=".$afficherresultats['ID']."&iduser=".$id."&page=".$numero_page."'>";
|
||||
echo code_inc_img(path_img_asset('edit.png'), "Editer le texte", "16", "16");
|
||||
echo "</a>";
|
||||
}
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
<td>
|
||||
<?php echo adapte_date($afficherresultats['date_envoi']); ?>
|
||||
<?php
|
||||
$droit_modification_niveau_visibilite = false;
|
||||
if(isset($_SESSION['ID'])) //L'utilisateur doit être connecté
|
||||
{
|
||||
if($id == $_SESSION['ID'] || (isset($infoami['ID']) ? ($infoami['ID'] == $_SESSION['ID'] ? true : false) : false)) //Réservé au propriétaire du post.
|
||||
$droit_modification_niveau_visibilite = true;
|
||||
}
|
||||
|
||||
affiche_menu_change_niveau_visibilite($afficherresultats['niveau_visibilite'], $afficherresultats['ID'], $droit_modification_niveau_visibilite);
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class='post <?php if($afficherfond == 1) {echo "texte_bg_grey"; } ?>'>
|
||||
<td colspan="2"><?php
|
||||
|
||||
//On vérifie si il y a une vidéo intégrée
|
||||
if($afficherresultats['type'] == "video")
|
||||
{
|
||||
//Récupération des informations de la vidéo
|
||||
$info_video = get_info_video($afficherresultats['idvideo'], $bdd);
|
||||
|
||||
//Préparation de l'affichage des vidéos
|
||||
echo "<div class='video_contener'>";
|
||||
|
||||
//Affichage de la vidéo
|
||||
affiche_video(array(array($info_video['URL'], $info_video['file_type'])), "metadata", "640", "264", "none", "controls", true, sha1($info_video['URL'].$info_video['file_type'].time().$_SERVER['REQUEST_URI']));
|
||||
|
||||
//Fermeture de l'affichage de la vidéo
|
||||
echo "</div>";
|
||||
}
|
||||
|
||||
//On adapte le texte au cas où il y aurait une image intégrée
|
||||
if($afficherresultats['type'] == "image" || $afficherresultats['type'] == "web_image")
|
||||
{
|
||||
//Affichage de l'image
|
||||
echo '<a class="fancybox" rel="group" href="';
|
||||
echo webUserDataFolder($afficherresultats['path']);
|
||||
echo '" title="'.str_replace('"', "'", affiche_smile(corrige_caracteres_speciaux(bloque_javascript_css(afficher_lien($afficherresultats['texte']))), $urlsite, $liste_smiley));
|
||||
echo ' <a href=\'index.php?id='.$id.'&post='.$afficherresultats['ID'].'\'> Voir plus </a>"><img class="img_from_upload" alt="Image envoyée par l\'utilisateur" src="';
|
||||
echo webUserDataFolder($afficherresultats['path']);
|
||||
echo '" alt="" /></a> <br />';
|
||||
}
|
||||
|
||||
//On adapte l'affichage au cas où il y aurait un compte à rebours
|
||||
if($afficherresultats['type'] == "count_down")
|
||||
{
|
||||
//Affichage du compte à rebours
|
||||
affiche_compte_rebours($afficherresultats);
|
||||
}
|
||||
|
||||
//On adapte l'affichage au cas où il y aurait un lien vers une page web
|
||||
if($afficherresultats['type'] == "webpage_link")
|
||||
{
|
||||
//Affichage du compte à rebours
|
||||
affiche_lien_webpage($afficherresultats);
|
||||
}
|
||||
|
||||
//On adapte l'affichage au cas où il y aurait un pdf
|
||||
if($afficherresultats['type'] == "pdf")
|
||||
{
|
||||
//Affichage du compte à rebours
|
||||
affiche_lien_pdf($afficherresultats);
|
||||
}
|
||||
|
||||
//On adapte le texte au cas où il y aurait une vidéos YouTube
|
||||
if($afficherresultats['type'] == "youtube")
|
||||
{
|
||||
//Affichage de l'image
|
||||
echo code_video_youtube($afficherresultats['path']);
|
||||
}
|
||||
|
||||
//On adapte le texte si un sondage est présent dans le post
|
||||
if($afficherresultats['type'] == "sondage")
|
||||
{
|
||||
//Affichage du sondage
|
||||
//Récupération des informations sur le sondage
|
||||
$infos_sondage = get_sondage_by_text_id($afficherresultats['ID'], $bdd);
|
||||
|
||||
if(!$infos_sondage)
|
||||
continue;
|
||||
|
||||
//Ouverture du sondage
|
||||
?><div class="metro sondage"><?php
|
||||
|
||||
//On simplifie la variable $infos_sondage pour la suite du script
|
||||
$infos_sondage = $infos_sondage[0];
|
||||
|
||||
//Affichage de la question du sondage
|
||||
echo "<div class='question_sondage'>".corrige_caracteres_speciaux($infos_sondage['question'])."</div>";
|
||||
|
||||
//Récupération des choix du sondage
|
||||
$choix_sondage = select_sql("sondage_choix", "ID_sondage = ?", $bdd, array($infos_sondage['ID']));
|
||||
|
||||
//On vérifie si la personne est autorisée à prendre part au sondage
|
||||
if(isset($_SESSION['ID']))
|
||||
$allow_participation = 1;
|
||||
else
|
||||
$allow_participation = 0;
|
||||
|
||||
//On propose le vote si celui-ci est possible
|
||||
if($allow_participation == 1)
|
||||
{
|
||||
$reponse_user_sondage = vote_personne_sondage($_SESSION['ID'], $infos_sondage['ID'], $bdd);
|
||||
|
||||
if(!$reponse_user_sondage)
|
||||
{
|
||||
//Affichage du formulaire de vote
|
||||
?><div class="reponse_sondage" id="reponse_sondage_<?php echo $infos_sondage['ID']; ?>_contener">
|
||||
<?php
|
||||
//Parcours des options de vote
|
||||
echo '<div class="input-control select">';
|
||||
echo "<select id='reponse_sondage_".$infos_sondage['ID']."' >";
|
||||
foreach($choix_sondage as $afficher_choix)
|
||||
{
|
||||
?><option value="<?php echo $afficher_choix['ID']; ?>"><?php echo $afficher_choix['Choix'];
|
||||
}
|
||||
echo "</select>";
|
||||
echo "</div>";
|
||||
?>
|
||||
|
||||
<!-- Bouton de vote -->
|
||||
<input type="button" class="primary" value="Voter" onClick="voteSondage(<?php echo $infos_sondage['ID']; ?>, <?php echo $infos_sondage['ID_utilisateurs']; ?>);" />
|
||||
<!-- Fin de: Bouton de vote -->
|
||||
</div><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
?>Votre réponse au sondage : <?php
|
||||
|
||||
foreach($choix_sondage as $afficher_choix)
|
||||
{
|
||||
if($afficher_choix['ID'] == $reponse_user_sondage)
|
||||
{
|
||||
echo $afficher_choix['Choix'];
|
||||
}
|
||||
}
|
||||
|
||||
?> <span class="a" onClick="if(confirm('Voulez-vous annuler votre vote ?')) { ajax_rapide('<?php echo $urlsite; ?>action.php?actionid=37&type=cancel_vote&id_choix=<?php echo $reponse_user_sondage; ?>&id_sondage=<?php echo $infos_sondage['ID']; ?>'); this.innerHTML = 'Annulé'; this.style.color='black'; }">Annuler</span><?php
|
||||
}
|
||||
}
|
||||
|
||||
//On affiche les réponses au sondage
|
||||
$reponse_sondages = select_sql("sondage_reponse", "ID_sondage = ?", $bdd, array($infos_sondage['ID']));
|
||||
|
||||
//On vérifie si il y a des réponses au sonde
|
||||
if(count($reponse_sondages) == 0)
|
||||
{
|
||||
echo "<p>Personne n'a répondu pour le moment au sondage.</p>";
|
||||
}
|
||||
else
|
||||
{
|
||||
//Retour à la ligne
|
||||
echo "<br />";
|
||||
|
||||
//Préparation à la comptabilité
|
||||
$liste_reponses = array();
|
||||
|
||||
//Traitement des choix proposés
|
||||
foreach($choix_sondage as $traiter_choix)
|
||||
{
|
||||
$liste_reponses[$traiter_choix['ID']] = array('hit' => 0, 'nom' => $traiter_choix['Choix']);
|
||||
}
|
||||
|
||||
//Traitement des réponses
|
||||
foreach($reponse_sondages as $traiter_reponse)
|
||||
{
|
||||
//On vérifie si la réponse proposée existe
|
||||
if(isset($liste_reponses[$traiter_reponse['ID_sondage_choix']]))
|
||||
//On incrémente le nombre de réponses
|
||||
$liste_reponses[$traiter_reponse['ID_sondage_choix']]['hit']++;
|
||||
}
|
||||
|
||||
//Définition des ID d'affichage
|
||||
$id_tableau_valeurs = "sondage_tableau_resultat_".$infos_sondage['ID']."_".time();
|
||||
$id_canvas_camembert = "sondage_tableau_resultat_".$infos_sondage['ID']."_".time()."_canvas";
|
||||
|
||||
echo "<div class='main_resultat_sondage_contener'>"; // class="grid" enlevé
|
||||
//echo "<div class='row'>";
|
||||
//echo "<div class='span2'>";
|
||||
//Tableau de valeurs
|
||||
echo "<table id='".$id_tableau_valeurs."'>";
|
||||
echo "<tr><th>Choix</th><th>Total</th></tr>";
|
||||
//Traitement des résultat
|
||||
foreach($liste_reponses as $afficher_reponse)
|
||||
{
|
||||
echo "<tr><td>".$afficher_reponse['nom']."</td><td>".$afficher_reponse['hit']."</td></tr>";
|
||||
}
|
||||
echo "</table>";
|
||||
//echo "</div><div class='span4'>";
|
||||
//Affichage du tableau des résultats
|
||||
//Canvas de destination du camembert
|
||||
echo '<canvas id="'.$id_canvas_camembert.'" width="300" height="300"></canvas>';
|
||||
//echo "</div>";
|
||||
//echo "</div>";
|
||||
echo "</div>";
|
||||
|
||||
|
||||
//On indique qu'il faut afficher le sondage au chargement de la page
|
||||
echo "<sondage_result>".$id_tableau_valeurs."|".$id_canvas_camembert."</sondage_result>";
|
||||
echo "<script>draw_camembert('".$id_tableau_valeurs."', '".$id_canvas_camembert."');</script>";
|
||||
}
|
||||
|
||||
?></div><?php
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Showing text
|
||||
$texte = $afficherresultats['texte'];
|
||||
echo affiche_smile(corrige_caracteres_speciaux(bloque_javascript_css(afficher_lien($texte))), $urlsite, $liste_smiley)."<!-- '\" -->";
|
||||
|
||||
|
||||
//Recherche des j'aimes
|
||||
//On vérifie déja si il faut modifier un j'aime - uniquement si l'utilisateur est connecté
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
if((isset($_GET['like'])) && (isset($_GET['aime'])) && (isset($_GET['typeaime_commentaire'])))
|
||||
{
|
||||
if($_GET['like'] == $afficherresultats['ID'])
|
||||
{
|
||||
aimeaimeplus($_GET['aime'], $_GET['like'], $_SESSION['ID'], $bdd);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Ouverture du conteneur des j'aime
|
||||
echo "<span class='aime_contener' id='aime_texte_".$afficherresultats['ID']."'>";
|
||||
|
||||
//Requete des j'aimes
|
||||
$retour = requeteaime($afficherresultats['ID'], $bdd);
|
||||
|
||||
$vousaimez = $retour['vousaimez'];
|
||||
$personnesaiment = $retour['personnesaiment'];
|
||||
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
if($vousaimez == 0)
|
||||
{
|
||||
echo "<span class='aime' ><a onClick='like_text_page(".$afficherresultats['ID'].", \"texte\", 0);' >";
|
||||
echo code_inc_img(path_img_asset('aime.png'));
|
||||
echo " ".$lang[33]."</a> </span> ";
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<span class='aime' ><a onClick='like_text_page(".$afficherresultats['ID'].", \"texte\", 1);' >";
|
||||
echo code_inc_img(path_img_asset('aimeplus.png'));
|
||||
echo " ".$lang[34]."</a> </span> ";
|
||||
}
|
||||
}
|
||||
|
||||
if ($personnesaiment == 1)
|
||||
{
|
||||
echo " Une personne aime ça.";
|
||||
}
|
||||
elseif ($personnesaiment != 0)
|
||||
{
|
||||
echo " ".$personnesaiment." ".$lang[61];
|
||||
}
|
||||
|
||||
//Fermeture du conteneur des j'aime
|
||||
echo "</span>";
|
||||
?></td>
|
||||
</tr>
|
||||
<?php
|
||||
$ok_commentaire = true;
|
||||
if(isset($infoami)) { if($infoami['bloquecommentaire'] == 1) $ok_commentaire = false; }
|
||||
if($afficher['bloquecommentaire'] == 0 AND $ok_commentaire == true)
|
||||
{
|
||||
?>
|
||||
<tr class='commentaires <?php if($afficherfond == 1) {echo "texte_bg_grey"; $afficherfond = 1;} else $afficherfond=1; ?>'>
|
||||
<!--<td class="td_left"><?php echo $lang[35]; ?></td>-->
|
||||
<td colspan="2">
|
||||
<table id="tablecommentaire<?php echo $afficherresultats['ID']; ?>" class="tablecommentaire">
|
||||
<?php
|
||||
//Vérification de l'existence du post d'un commentaire
|
||||
if ((isset($_POST['commentaire'])) && (isset($_POST['idtexte'])))
|
||||
{
|
||||
if($_POST['idtexte'] == $afficherresultats['ID'])
|
||||
{
|
||||
//On vérifie si le commentaire n'est pas vide
|
||||
if($_POST['commentaire'] != "" || isset($_FILES['image']))
|
||||
{
|
||||
//Insertion du commentaire
|
||||
ajoutcommentaire($_SESSION['ID'], $afficherresultats['ID'], corrige_accent_javascript($_POST['commentaire']), $bdd);
|
||||
|
||||
//Texte de la notification
|
||||
if($afficher['ID'] == $_SESSION['ID'])
|
||||
$texte_notification = "a ajouté un commentaire sur sa page.";
|
||||
else
|
||||
$texte_notification = "a ajouté un commentaire sur la page de ".$afficher['prenom']." ".$afficher['nom'];
|
||||
|
||||
//And the notification
|
||||
if(!visibilite_privee($afficherresultats["niveau_visibilite"]))
|
||||
{
|
||||
sendnotification($_SESSION['ID'], $texte_notification, $bdd, "page:".$afficher['ID']."post:".$afficherresultats['ID'], $afficher['ID'], "commentaire");
|
||||
}
|
||||
else
|
||||
{
|
||||
//Envoi de la notification aux personnes autorisées uniquemement
|
||||
sendnotification($_SESSION['ID'], $texte_notification, $bdd, "page:".$afficher['ID']."post:".$afficherresultats['ID'], $afficher['ID'], "commentaire", list_personnes_groupes($afficherresultats["niveau_visibilite"], $bdd));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//On affiche un message d'erreur
|
||||
?><script type='text/javascript'>alert("L'ajout de commentaires vides est interdit!");</script><?php
|
||||
}
|
||||
|
||||
//On ne quitte pas le script
|
||||
echo("<!-- Add comment -->");
|
||||
}
|
||||
}
|
||||
|
||||
//Affichage des commentaires
|
||||
$commentaires = affichecommentaire($afficherresultats['ID'], $bdd);
|
||||
|
||||
//Affichage des commentaires
|
||||
foreach($commentaires as $affichercommentaires)
|
||||
{
|
||||
//Affichage du commentaire
|
||||
?>
|
||||
<tr>
|
||||
<td class="commentaire"><?php
|
||||
//Recherche de l'avatar et du nom de la personne (si nécessaire
|
||||
$id_posteur_commentaire = $affichercommentaires['ID_personne'];
|
||||
if(!isset($info_users[$id_posteur_commentaire]['table_utilisateurs']))
|
||||
{
|
||||
$info_users[$id_posteur_commentaire]['table_utilisateurs'] = cherchenomprenom($id_posteur_commentaire, $bdd);
|
||||
$info_users[$id_posteur_commentaire]['avatar_32_32'] = avatar($id_posteur_commentaire, "./", 32, 32);
|
||||
}
|
||||
|
||||
echo $info_users[$id_posteur_commentaire]['avatar_32_32'];
|
||||
$infopersonne = $info_users[$id_posteur_commentaire]['table_utilisateurs'];
|
||||
echo corrige_caracteres_speciaux($infopersonne['prenom']." ".$infopersonne['nom']);
|
||||
?>
|
||||
|
||||
<?php
|
||||
//Affichage de l'image du commentaire(si il y en a une)
|
||||
if($affichercommentaires['image_commentaire'] != "")
|
||||
{
|
||||
// Ancienne version
|
||||
// echo "<img src='data:image/png;base64,".$affichercommentaires['image_commentaire']."' />";
|
||||
|
||||
//Adresse de l'image
|
||||
$adresse_image = $urlsite."imgcommentaire.php/".base64_encode($affichercommentaires['ID'])."/".sha1($affichercommentaires['commentaire']);
|
||||
|
||||
echo "<a style='cursor: pointer' onClick='$.fancybox.open({href :\"".$adresse_image."\", type : \"image\"});'><img src='".$adresse_image."' height='100' /></a> ";
|
||||
}
|
||||
|
||||
//Affichage du commentaire
|
||||
if($ok_textes_check != "source:index.php")
|
||||
echo afficher_lien(corrige_caracteres_speciaux(decorrige_accent_javascript(affiche_smile(bloquebalise($affichercommentaires['commentaire'], "commentaire"), $urlsite, $liste_smiley))));
|
||||
else
|
||||
echo afficher_lien(corrige_caracteres_speciaux(corrige_accent_javascript(affiche_smile(bloquebalise($affichercommentaires['commentaire'], "commentaire"), $urlsite, $liste_smiley))));
|
||||
|
||||
//Bouton du j'aime pour commentaire
|
||||
bouton_aime_commentaire($affichercommentaires['ID'], $afficherresultats['ID'], $bdd);
|
||||
|
||||
echo "<span>";
|
||||
//Uniquement si l'utilisateur est connecté
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//Bouton de suppression de commentaire, si c'est autorisé...
|
||||
if(($_SESSION['ID'] == $id) || ($affichercommentaires['ID_personne'] == $_SESSION['ID']))
|
||||
{
|
||||
//On vérifie d'abord l'existence d'une demande de suppression de commentaire
|
||||
if(isset($_GET['suppidcom']))
|
||||
{
|
||||
if($affichercommentaires['ID'] == $_GET['suppidcom'])
|
||||
{
|
||||
//On supprime le commentaire
|
||||
echo suppcom($affichercommentaires['ID'], $bdd);
|
||||
die();
|
||||
}
|
||||
}
|
||||
|
||||
//La personne est autorisée à supprimer le commentaire
|
||||
echo "<a onClick='delete_comment(\"".$affichercommentaires['ID']."\", \"".$afficherresultats['ID']."\", \"".$id."\", \"".(isset($_GET['page']) ? $_GET['page'] : 0)."\")";
|
||||
echo "'>";
|
||||
echo code_inc_img(path_img_asset('supp.png'), "Supprimer le commentaire");
|
||||
echo "</a>";
|
||||
|
||||
//On vérifie si la personne est bien celle qui est l'auteur du commentaire pour pouvoir le modifier
|
||||
if($_SESSION['ID'] == $affichercommentaires['ID_personne'])
|
||||
{
|
||||
echo "<a onClick='editcommentaire(\"".$affichercommentaires['ID']."\", \"".$afficherresultats['ID']."\", \"".$id."\", \"".(isset($_GET['page']) ? $_GET['page'] : 0)."\");'>";
|
||||
echo code_inc_img(path_img_asset('edit.png'), "Modifier le commentaire", "16", "16");
|
||||
echo "</a>";
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php echo adapte_date($affichercommentaires['date_envoi']); ?></span>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
//Formulaire d'envoi de nouveau commentaire - uniquement si l'utilisateur est connecté
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//On vérifie que l'avatar de l'utilisateur connecté est disponible
|
||||
if(!isset($info_users[$_SESSION['ID']]['avatar_32_32']) OR !isset($info_users[$_SESSION['ID']]['table_utilisateurs']))
|
||||
{
|
||||
$info_users[$_SESSION['ID']]['avatar_32_32'] = avatar($_SESSION['ID'], "./", 32, 32);
|
||||
$info_users[$_SESSION['ID']]['table_utilisateurs'] = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a comment
|
||||
*/
|
||||
?>
|
||||
<tr class="add_comment">
|
||||
<td colspan="2">
|
||||
<form id="addcommentaire_<?php echo $afficherresultats['ID']; ?>" enctype="multipart/form-data" method="post">
|
||||
<!-- Avatar -->
|
||||
<?php echo $info_users[$_SESSION['ID']]['avatar_32_32']; ?>
|
||||
|
||||
<!-- Text comment -->
|
||||
<input type='text' placeholder="Ajout d'un commentaire..." name='commentaire' id="addcommentaire<?php echo $afficherresultats['ID']; ?>" /><?php echo source_ajout_smiley($afficherresultats['ID']); ?>
|
||||
|
||||
<!-- ID of text -->
|
||||
<input type='hidden' name='idtexte' value='<?php echo $afficherresultats['ID']; ?>' />
|
||||
|
||||
<!-- Optionnal: image -->
|
||||
<label class="input_commentaire_image">
|
||||
<?php echo code_inc_img(path_img_asset('small/image.png'), "Optionnel: ajout d'une image"); ?>
|
||||
<input type="file" id="image_<?php echo $afficherresultats['ID']; ?>" name="image" />
|
||||
</label>
|
||||
|
||||
<!-- Submit comment -->
|
||||
<input onClick="submitCommentaire('action.php?actionid=29&id=<?php echo $id; if(isset($_GET['page'])) echo "&page=".$_GET['page']; ?>', 'addcommentaire<?php echo $afficherresultats['ID']; ?>', 'tablecommentaire<?php echo $afficherresultats['ID']; ?>', <?php echo $afficherresultats['ID']; ?>, <?php if(isset($_GET['page'])) echo $_GET['page']; else echo 0; ?>, <?php echo $id; ?> );" type='button' value='<?php echo $lang[32]; ?>' />
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
//On supprime l'ID du posteur pour le prochain affichage
|
||||
unset($id_posteur);
|
||||
|
||||
//On supprime l'ID de l'ami si il existe pour le prochain post
|
||||
if(isset($infoami))
|
||||
unset($infoami);
|
||||
}
|
||||
|
||||
//Création de l'ID du bouton "Afficher plus"
|
||||
//$id_bouton_afficher_plus = "view_more_".time();
|
||||
if(!isset($no_view_more))
|
||||
{
|
||||
?><tr id="view_more"><?php echo $id; ?>|<?php echo $numero_page+1; ?><tr><?php
|
||||
}
|
||||
|
||||
//Fin de fichier
|
||||
//die();
|
316
inc/pages/improveForum/forum.inc.php
Executable file
316
inc/pages/improveForum/forum.inc.php
Executable file
@ -0,0 +1,316 @@
|
||||
<?php
|
||||
/**
|
||||
* Comunic improvement forum
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit("Invalid call - ".$_SERVER['PHP_SELF']);
|
||||
|
||||
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Forum - Comunic</title>
|
||||
<style>
|
||||
.retour {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.infouser {
|
||||
width: 25%;
|
||||
}
|
||||
|
||||
.post {
|
||||
width: 75%;
|
||||
}
|
||||
|
||||
.liresujet {
|
||||
width: 950px;
|
||||
max-width: 950px;
|
||||
}
|
||||
|
||||
.infoleft {
|
||||
font-size: 75%
|
||||
}
|
||||
</style>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
</head>
|
||||
<body>
|
||||
<?php include(pagesRelativePath('common/pageTop.php')); ?>
|
||||
<?php
|
||||
if(!isset($_GET['action']))
|
||||
{
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
?>
|
||||
<table style="margin: auto;">
|
||||
<tr>
|
||||
<td>
|
||||
<?php echo code_inc_img(path_img_asset('page_add.png')); ?>
|
||||
</td>
|
||||
<td>
|
||||
<a href='forum.php?action=nouvsujet'>
|
||||
Nouveau sujet
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<?php
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
?>
|
||||
<p><i>Vous devez être connecté pour pouvoir poster un nouveau sujet</i></p>
|
||||
<?php
|
||||
}
|
||||
//Affichage de tous les sujets
|
||||
$sql = 'SELECT * FROM forum_sujet ORDER BY ID DESC';
|
||||
|
||||
//Ex<45>cution de la requete
|
||||
$requete = $bdd->query($sql);
|
||||
|
||||
//Affichage des r<>sultat
|
||||
echo '<table align="center" border="1" cellspacing="0" cellpadding="4">';
|
||||
echo '<tr><td>Titre du sujet</td><td>Identifiant de la personne</td><td>Date d\'envoi</td></tr>';
|
||||
while($afficher = $requete->fetch())
|
||||
{
|
||||
echo '<tr><td><a href="forum.php?action=affichersujet&id='.$afficher['ID'].'">'.$afficher['titre'].'</a></td><td>';
|
||||
|
||||
$info = cherchenomprenom($afficher['ID_personne'], $bdd);
|
||||
|
||||
echo $info['prenom']." ".$info['nom'];
|
||||
|
||||
echo '</td><td>'.$afficher['date_envoi'].'</td></tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
}
|
||||
else
|
||||
{
|
||||
?><p class='retour'><a href='forum.php'>Retour à l'acceuil du forum</a></p><?php
|
||||
|
||||
if($_GET['action'] == 'nouvsujet')
|
||||
{
|
||||
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
if(isset($_POST['titre']) AND isset($_POST['sujet']))
|
||||
{
|
||||
if($_POST['titre'] != '' AND $_POST['sujet'] != '')
|
||||
{
|
||||
//On enregistre le sujet dans la base de donn<6E>es
|
||||
$sql = 'INSERT INTO forum_sujet (titre, ID_personne, date_envoi, sujet) VALUES (?, ?, NOW(), ?) ';
|
||||
|
||||
//Ex<45>cution de la requete
|
||||
$insertion = $bdd->prepare($sql);
|
||||
$insertion->execute(array( $_POST['titre'], $_SESSION['ID'], $_POST['sujet']));
|
||||
|
||||
//On affiche un message de succ<63>s et on bloque l'affichage du reste de la page
|
||||
?><p>Le message a bien été posté. <a href='forum.php'> Retour à l'acceuil du forum</a></p><?php
|
||||
exit();
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<p style="color: red;">Certains champs n\'ont pas <20>t<EFBFBD> remplis !</p>';
|
||||
}
|
||||
}
|
||||
|
||||
include(relativePath_assets('html/tinymce.html'));
|
||||
?>
|
||||
Nouveau sujet (faites attention aux fautes d'orthographe) :
|
||||
<form action='forum.php?action=nouvsujet' method='post'>
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
Titre du sujet : <input type='text' name='titre' <?php if(isset($_POST['titre'])) { echo 'value="'.$_POST['titre'].'"' ; } ?> />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<textarea name='sujet' id='textarea'><?php if(isset($_POST['sujet'])) { echo $_POST['sujet']; } ?></textarea>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<input type='submit' value='Poster le sujet' />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
else
|
||||
{
|
||||
?><p>Erreur : vous devez être connecté pour poster un nouveau sujet. <a href='connexion.php'>Connexion</a></p><?php
|
||||
}
|
||||
}
|
||||
elseif($_GET['action'] == 'affichersujet')
|
||||
{
|
||||
if(isset($_GET['id']))
|
||||
{
|
||||
if($_GET['id'] != "")
|
||||
{
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
//On v<>rifie si il ne faut pas poster une r<>ponse
|
||||
if(isset($_POST['reponse']))
|
||||
{
|
||||
if($_POST['reponse'] != '')
|
||||
{
|
||||
//On enregistre la r<>ponse
|
||||
$sql = 'INSERT INTO forum_reponse (ID_personne, ID_sujet, date_envoi, reponse) VALUES (?, ?, NOW(), ?) ';
|
||||
|
||||
//Ex<45>cution de la requete
|
||||
$insertion = $bdd->prepare($sql);
|
||||
$insertion->execute(array($_SESSION['ID'], $_GET['id'], $_POST['reponse']));
|
||||
|
||||
//On affiche une message de succ<63>s
|
||||
echo '<p>La réponse a été postée avec succès.</p>';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//On recherche le sujet pour l'afficher
|
||||
$info_sujet = info_sujet($_GET['id'], $bdd);
|
||||
|
||||
//On affiche le sujet
|
||||
|
||||
//On recherche les informations de la personne
|
||||
$info_personne = cherchenomprenom($info_sujet['ID_personne'], $bdd);
|
||||
|
||||
|
||||
//On v<>rifie si la personne est autoris<69>e <20> supprimer la r<>ponse
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
if($_SESSION['ID'] == $info_personne['ID'])
|
||||
{
|
||||
//On v<>rifie si une demande a d<>j<EFBFBD> <20>t<EFBFBD> post<73>e
|
||||
if(isset($_GET['suppsujet']))
|
||||
{
|
||||
//On v<>rifie si c'est le bon commentaire et la bonne personne, ce serai dommage...
|
||||
if($_GET['suppsujet'] == $info_sujet['ID'])
|
||||
{
|
||||
//On supprime alors le sujet
|
||||
$sql = 'DELETE FROM forum_sujet WHERE ID = '.$_GET['id'];
|
||||
|
||||
//Execution de la requete
|
||||
$supp = $bdd->query($sql);
|
||||
|
||||
//On supprime les commentaires associ<63>s
|
||||
$sql = 'DELETE from forum_reponse WHERE ID_sujet = '.$_GET['id'];
|
||||
|
||||
//Execution de la requete
|
||||
$supp = $bdd->query($sql);
|
||||
|
||||
//Rafra<72>chissement de la page
|
||||
echo 'Suppression terminée, redirection en cours...';
|
||||
echo '<meta http-equiv="refresh" content="0;URL=forum.php">';
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
//On affiche un message de suprression
|
||||
?><a href='forum.php?id=<?php echo $_GET['id']; ?>&action=affichersujet&suppsujet=<?php echo $_GET['id']; ?>' title='Supprimer le sujet'>Supprimer le sujet</a> <br /><?php
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
<table align="center" border="1" cellspacing="0" cellpadding="4" class='liresujet'>
|
||||
<tr>
|
||||
<td class='infouser'>
|
||||
Par <b><?php echo $info_personne['prenom']." ".$info_personne['nom']; ?></b><br />
|
||||
<span class='infoleft'><i>Date d'inscription :</i> <?php echo $info_personne['date_creation']; ?></span><br />
|
||||
<span class='infoleft'><i>Date d'envoi :</i> <?php echo $info_sujet['date_envoi']; ?></span><br />
|
||||
</td>
|
||||
<td class='post'><?php echo $info_sujet['sujet']; ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
|
||||
//On r<>cup<75>re les r<>ponse qui ont <20>t<EFBFBD> post<73>es
|
||||
$info_reponses = info_reponses($info_sujet['ID'], $bdd);
|
||||
|
||||
//On affiche les r<>ponses
|
||||
foreach($info_reponses as $afficher)
|
||||
{
|
||||
$info_personne = cherchenomprenom($afficher['ID_personne'], $bdd);
|
||||
?>
|
||||
<tr>
|
||||
<td class='infouser'>
|
||||
<?php
|
||||
//On v<>rifie si la personne est autoris<69>e <20> supprimer la r<>ponse
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
if($_SESSION['ID'] == $info_personne['ID'])
|
||||
{
|
||||
//On v<>rifie si une demande a d<>j<EFBFBD> <20>t<EFBFBD> post<73>e
|
||||
if(isset($_GET['suppcom']))
|
||||
{
|
||||
//On v<>rifie si c'est le bon commentaire et la bonne personne, ce serai dommage...
|
||||
if($_GET['suppcom'] == $afficher['ID'])
|
||||
{
|
||||
//On supprime alors le commentaire
|
||||
$sql = 'DELETE FROM forum_reponse WHERE ID = '.$afficher['ID'];
|
||||
|
||||
//Execution de la requete
|
||||
$supp = $bdd->query($sql);
|
||||
|
||||
//Rafra<72>chissement de la page
|
||||
echo 'Suppression terminée, redirection en cours...';
|
||||
echo '<meta http-equiv="refresh" content="0;URL=forum.php?action=affichersujet&id='.$_GET['id'].'">';
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
//On affiche un message de suprression
|
||||
?><a href='forum.php?id=<?php echo $_GET['id']; ?>&action=affichersujet&suppcom=<?php echo $afficher['ID']; ?>' title='Supprimer la réponse'><?php echo code_inc_img(path_img_asset('supp.png')); ?></a> <br /><?php
|
||||
}
|
||||
}
|
||||
?>
|
||||
Par <b><?php echo $info_personne['prenom']." ".$info_personne['nom']; ?></b><br />
|
||||
<span class='infoleft'><i>Date d'inscription :</i> <?php echo $info_personne['date_creation']; ?></span><br />
|
||||
<span class='infoleft'><i>Date d'envoi :</i> <?php echo $afficher['date_envoi']; ?></span><br />
|
||||
</td>
|
||||
<td class='post'><?php echo $afficher['reponse']; ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
//On v<>rifie si la personne peut poster une reponse
|
||||
if(isset($_SESSION['ID']))
|
||||
{
|
||||
?>
|
||||
<tr>
|
||||
<td class='infouser'>
|
||||
Poster une réponse
|
||||
</td>
|
||||
<td>
|
||||
<form action='forum.php?action=affichersujet&id=<?php echo $info_sujet['ID']; ?>' method='post'>
|
||||
<?php include(relativePath_assets('html/tinymce.html')); ?>
|
||||
<textarea name='reponse' id='textarea'></textarea><br />
|
||||
<span class="text-align: center"><input type='submit' value='Envoyer la réponse' /></span>
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
echo '</table>';
|
||||
}
|
||||
else
|
||||
{
|
||||
header('location: forum.php');
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
header('location: forum.php');
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<p><b>Astuce:</b> Pour retrouver facilement un sujet ou une réponse qui vous intéresse vous pouvez utiliser les touches Ctrl + F de votre clavier pour effectuer une recherche dans la page.</p>
|
||||
<hr />
|
||||
<?php include(pagesRelativePath('common/pageBottom.php')); ?>
|
||||
</body>
|
||||
</html>
|
38
inc/pages/openUsers/openUsers.inc.php
Executable file
38
inc/pages/openUsers/openUsers.inc.php
Executable file
@ -0,0 +1,38 @@
|
||||
<?php
|
||||
/**
|
||||
* List all opened users
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit("Invalid call - ".$_SERVER['PHP_SELF']);
|
||||
|
||||
?><!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
<title><?php echo $lang[11]; ?> - Comunic</title>
|
||||
</head>
|
||||
<body>
|
||||
<?php include(pagesRelativePath('common/pageTop.php')); ?>
|
||||
<h1 class='titre'><?php echo $lang[11]; ?></h1>
|
||||
<?php
|
||||
//On r<>cup<75>re la liste des pages publiques
|
||||
$liste = get_page_publique($bdd);
|
||||
|
||||
//On affiche le r<>sultat
|
||||
?><p>Voici l'ensemble de la liste des pages ouvertes :</p>
|
||||
<table><?php
|
||||
foreach($liste as $afficher)
|
||||
{
|
||||
//On recherche les informations de la personne
|
||||
$infopersonne = cherchenomprenom($afficher['ID'], $bdd);
|
||||
|
||||
//On affiche le r<>sultat
|
||||
echo "<tr><td>".avatar($afficher['ID'], './')."</td><td><a href='./?id=".$afficher['ID']."'>".$afficher['prenom']." ".$afficher['nom']."</a></td></tr>";
|
||||
}
|
||||
?></table><?php
|
||||
?><hr />
|
||||
<?php include(pagesRelativePath('common/pageBottom.php')); ?>
|
||||
</body>
|
||||
</html>
|
115
inc/pages/searchUser/searchUser.inc.php
Executable file
115
inc/pages/searchUser/searchUser.inc.php
Executable file
@ -0,0 +1,115 @@
|
||||
<?php
|
||||
/**
|
||||
* Search somebody
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
isset($_SESSION) OR exit('Invalid call - '.$_SERVER['PHP_SELF']);
|
||||
|
||||
//On d<>termine un ID de session pour l'utilisateur
|
||||
$id_session = (isset($_SESSION['ID']) ? $_SESSION['ID'] : 0);
|
||||
|
||||
//On corrige la requ<71>te si n<>cessaire
|
||||
if(isset($_GET['q']) AND !isset($_POST['nom']))
|
||||
$_POST['nom'] = $_GET['q'];
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<?php include(pagesRelativePath('common/head.php')); ?>
|
||||
<title><?php echo $lang[39]; ?></title>
|
||||
</head>
|
||||
<body>
|
||||
<?php include(pagesRelativePath('common/pageTop.php')); ?>
|
||||
<h1 class='titre'><?php echo $lang[40]; ?></h1>
|
||||
<table align='center'>
|
||||
<tr>
|
||||
<td>
|
||||
<form action='recherche.php' name="Recherche d'utilisateurs" method='post'>
|
||||
<input type='text' name='nom' size="53" autocomplete="off" id="searchuser" value="<?php echo(isset($_POST['nom']) ? $_POST['nom']: ""); ?>" placeholder="<?php echo $lang[40]; ?>" style="color:black;" />
|
||||
<input type='submit' value='<?php echo $lang[39]; ?>' />
|
||||
</form>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<?php
|
||||
if(isset($_POST['nom']))
|
||||
{
|
||||
//Mettons "" <20> la place de "%"
|
||||
$nom = str_replace("%", "", $_POST['nom']);
|
||||
|
||||
//V<>rifions si la personne ne veut pas tout afficher
|
||||
if(($nom != '') && ($nom != '%')&& ($nom != ' '))
|
||||
{
|
||||
//Continuons de prot<6F>ger les personnes et la table
|
||||
$nom = str_replace("'", '"', $nom);
|
||||
|
||||
//Rendons flexible la requete
|
||||
$nom = str_replace(' ', '%', $nom);
|
||||
|
||||
//Nous pouvons maintenant faire la recherche
|
||||
//Requ<71>te SQL
|
||||
//$sql = "SELECT * FROM utilisateurs WHERE (nom LIKE '%".$nom."%') || (prenom LIKE '%".$nom."%') || (CONCAT(prenom, '%', nom) LIKE '%".$nom."%' ) || (CONCAT(prenom, ' ', nom) LIKE '%".$nom."%' ) || (mail LIKE '%".$nom."%') "; //Avec E-mail
|
||||
$sql = "SELECT * FROM utilisateurs WHERE (nom LIKE '%".$nom."%') || (prenom LIKE '%".$nom."%') || (CONCAT(prenom, '%', nom) LIKE '%".$nom."%' ) || (CONCAT(prenom, ' ', nom) LIKE '%".$nom."%' ) "; //Sans E-mail
|
||||
|
||||
//Ex<45>cution de la requete SQL
|
||||
$recherche = $bdd->query($sql);
|
||||
|
||||
//Affichage des r<>sultats
|
||||
echo "<table>";
|
||||
while($afficherrecherche = $recherche->fetch())
|
||||
{
|
||||
//On v<>rifie qu'il ne s'agit pas de l'utilisateur effectuant la recherche
|
||||
if($afficherrecherche['ID'] != $id_session AND ($id_session == 0 ? ( ($afficherrecherche['pageouverte'] == 1 ? true : false) ) : true))
|
||||
{
|
||||
?>
|
||||
<tr>
|
||||
<td>
|
||||
<table>
|
||||
<tr>
|
||||
<td><?php
|
||||
echo avatar($afficherrecherche['ID'], "./", 64, 64);
|
||||
?></td>
|
||||
<td><a href='index.php?id=<?php echo $afficherrecherche['ID']; ?>' title='Voire sa page'><?php echo $afficherrecherche['prenom']." ".$afficherrecherche['nom']; ?></a></td>
|
||||
<td>
|
||||
<?php
|
||||
//On v<>rifie si la page est v<>rifi<66>e
|
||||
if($afficherrecherche['page_verifiee'] == 1)
|
||||
{
|
||||
message_checked_page();
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
echo "</table>";
|
||||
}
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<p style="text-align: center;"><?php
|
||||
//Si l'utilisateur n'est pas connect<63>, on lui propose de se connecter
|
||||
if($id_session == 0 AND isset($_POST['nom']))
|
||||
{
|
||||
//Message de proposition avec redirection automatique
|
||||
echo "<a href='connecter.php?redirect=".urlencode("recherche.php?q=".$_POST['nom'])."'>Connectez-vous et accédez à plus de résultats</a>";
|
||||
}
|
||||
?></p>
|
||||
<?php if(isset($_POST['nom'])) { ?><p style="text-align:center;"><a href="http://www.bing.com/search?q=<?php echo urlencode($_POST['nom']); ?>" target="_blank">Elargir la recherche au web avec Bing</a></p><?php } ?>
|
||||
<hr />
|
||||
<?php
|
||||
//Inclusion du pied de page
|
||||
include(pagesRelativePath('common/pageBottom.php'));
|
||||
?>
|
||||
</body>
|
||||
</html>
|
44
inc/pages/settings/appearance.inc.php
Normal file
44
inc/pages/settings/appearance.inc.php
Normal file
@ -0,0 +1,44 @@
|
||||
<?php
|
||||
/**
|
||||
* Change appearance settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
if(isset($_POST['color_menu']))
|
||||
{
|
||||
//On vérifie si l'utilisateur veut l'ancien menu ou un menu moderne
|
||||
if(($_POST['color_menu'] == "blue") || ($_POST['color_menu'] == "dark") || ($_POST['color_menu'] == "light") || ($_POST['color_menu'] == "white"))
|
||||
{
|
||||
//Modification de la base de donnée pour un menu moderne
|
||||
$sql = "UPDATE utilisateurs SET old_menu = ?, color_menu = ? WHERE ID = ?";
|
||||
$modif = $bdd->prepare($sql);
|
||||
$modif->execute(array(0, $_POST['color_menu'], $_SESSION['ID']));
|
||||
}
|
||||
else
|
||||
{
|
||||
//Modification de la base de donnée pour l'ancien menu
|
||||
$sql = "UPDATE utilisateurs SET old_menu = 1, color_menu = 'none' WHERE ID = ".$_SESSION['ID'];
|
||||
$modif = $bdd->query($sql);
|
||||
//$modif->execute(array('none', $_SESSION['ID']));
|
||||
}
|
||||
|
||||
//Actualisation de la page
|
||||
echo "Enregistrement des modification terminé, actualisation de la page....";
|
||||
echo '<meta http-equiv="refresh" content="0;URL=parametres.php?c=apparence">';
|
||||
die();
|
||||
}
|
||||
?><h3>Apparence du site</h3>
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=apparence" method="post">
|
||||
<table>
|
||||
<tr><td>Menu bleu</td><td><input type="radio" name="color_menu" value="blue" <?php echo ($afficher['color_menu'] == "blue" ? "checked" : ""); ?> /></td></tr>
|
||||
<tr><td>Menu noir</td><td><input type="radio" name="color_menu" value="dark" <?php echo ($afficher['color_menu'] == "dark" ? "checked" : ""); ?> /></td></tr>
|
||||
<tr><td>Menu léger</td><td><input type="radio" name="color_menu" value="light" <?php echo ($afficher['color_menu'] == "light" ? "checked" : ""); ?> /></td></tr>
|
||||
<tr><td>Menu blanc</td><td><input type="radio" name="color_menu" value="white" <?php echo ($afficher['color_menu'] == "white" ? "checked" : ""); ?> /></td></tr>
|
||||
<!--<tr><td>Ancienne version du menu</td><td><input type="radio" name="color_menu" value="old_menu" <?php echo ($afficher['old_menu'] == "1" ? "checked" : ""); ?> /></td></tr>-->
|
||||
<tr><td colspan="2"><input type="submit" value="Mettre à jour l'apparence de Comunic" /></td></tr>
|
||||
</table>
|
||||
</form><?php
|
158
inc/pages/settings/avatar.inc.php
Normal file
158
inc/pages/settings/avatar.inc.php
Normal file
@ -0,0 +1,158 @@
|
||||
<?php
|
||||
/**
|
||||
* Change avatar settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
?>
|
||||
<h1>Avatar</h1>
|
||||
<?php
|
||||
//Vérifions si un avatar a déjà été posté
|
||||
if ((isset($_FILES['avatar'])) AND ($_FILES['avatar']['error'] == 0))
|
||||
{
|
||||
// Testons si l'extension est autorisée
|
||||
$infosfichier = pathinfo($_FILES['avatar']['name']);
|
||||
$extension_upload = $infosfichier['extension'];
|
||||
$extensions_autorisees = array('jpg', 'jpeg');
|
||||
|
||||
//Génération du nom de l'avatar
|
||||
$extension = ".jpg";
|
||||
$nom_avatar = str_replace('@', '', sha1(time()).$extension);
|
||||
|
||||
//On supprime l'ancien avatar si il y en a un
|
||||
if(file_exists('avatars/adresse_avatars/'.$_SESSION['ID'].'.txt'))
|
||||
{
|
||||
unlink(relativeUserDataFolder('avatars/'.file_get_contents(relativeUserDataFolder('avatars/adresse_avatars/'.$_SESSION['ID'].'.txt'))));
|
||||
}
|
||||
|
||||
//On modifie l'adresse d'enregistrement de l'avatar
|
||||
file_put_contents(relativeUserDataFolder("avatars/adresse_avatars/".$_SESSION['ID'].".txt"), $nom_avatar);
|
||||
|
||||
// On peut copier l'avatar vers le répertoire de destinations
|
||||
move_uploaded_file($_FILES['avatar']['tmp_name'], relativeUserDataFolder('avatars/'.$nom_avatar));
|
||||
|
||||
echo "<h2>Terminer l'envoi</h2>";
|
||||
echo "<p>".code_inc_img(path_img_asset('succes.png'), "Succè")." L'envoi a bien été effectué !</p>";
|
||||
}
|
||||
|
||||
//Check if we have to edit image
|
||||
if(isset($_GET['editimage']))
|
||||
{
|
||||
echo "<p>Veuillez choisir quelle partie de l'image sera votre avatar :</p>";
|
||||
|
||||
echo avatar($_SESSION['ID'], "./", "", "", "photo"); ?>
|
||||
<style type="text/css">#photo{max-width: none !important;}</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
$('#photo').imgAreaSelect({
|
||||
handles: true,
|
||||
x1: 0, y1: 0, x2: 128, y2: 128,
|
||||
onSelectEnd: function (img, selection) {
|
||||
$('input[name="x1"]').val(selection.x1);
|
||||
$('input[name="y1"]').val(selection.y1);
|
||||
$('input[name="x2"]').val(selection.x2);
|
||||
$('input[name="y2"]').val(selection.y2);
|
||||
},
|
||||
aspectRatio: '2:2',
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>&editavatar" method="post">
|
||||
<input type="hidden" name="x1" value="0" />
|
||||
<input type="hidden" name="y1" value="0" />
|
||||
<input type="hidden" name="x2" value="128" />
|
||||
<input type="hidden" name="y2" value="128" />
|
||||
<input type="submit" name="submit" value="Enregistrer" />
|
||||
</form><?php
|
||||
|
||||
}
|
||||
|
||||
//Vérifions si il faut modifier l'avatar
|
||||
if(isset($_GET['editavatar']) && isset($_POST['x1']) && isset($_POST['y1']) && isset($_POST['x2']) && isset($_POST['y2']))
|
||||
{
|
||||
//On définit l'adresse de l'avatar
|
||||
$nom_avatar = str_replace('@', '', sha1(time()).".jpg");
|
||||
|
||||
//On redimensionne l'image
|
||||
redimensionnne_enregistre_image(
|
||||
$_POST['x1'],
|
||||
$_POST['x2'],
|
||||
$_POST['y1'],
|
||||
$_POST['y2'],
|
||||
relativeUserDataFolder("avatars/".file_get_contents(relativeUserDataFolder("avatars/adresse_avatars/".$_SESSION['ID'].".txt"))),
|
||||
relativeUserDataFolder("avatars/".$nom_avatar),
|
||||
128,
|
||||
128);
|
||||
|
||||
//On modifie la date d'enregistrement de l'avatar
|
||||
file_put_contents(relativeUserDataFolder("avatars/adresse_avatars/".$_SESSION['ID'].".txt"), $nom_avatar);
|
||||
|
||||
?><p><strong>Félicitations! Votre avatar a bien été configuré.</strong></p><?php
|
||||
}
|
||||
|
||||
//Requete de l'existence d'un avatar
|
||||
if(file_exists(relativeUserDataFolder('avatars/adresse_avatars/'.$_SESSION['ID'].".txt")))
|
||||
{
|
||||
echo avatar($_SESSION['ID'], "./", 64, 64, "avatar");
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "Vous n'avez pas encore défini d'avatar. Voici l'avatar par défaut :<img src='".webUserDataFolder('avatars/0.jpg')."' whidth='32' height='32' title='Vous pouvez définir votre avatar dans les parametres.' />";
|
||||
|
||||
//We notice that there isn't any avatar yet
|
||||
$noAvatar = true;
|
||||
}
|
||||
?>
|
||||
|
||||
<!-- New avatar form -->
|
||||
<h5>Formulaire d'envoi d'un avatar :</h5>
|
||||
<form action='<?php $_SERVER['PHP_SELF']; ?>?c=avatar' name="Envoi d'un nouvel avatar" method='post' enctype="multipart/form-data">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
Sélectionnez le nouvel avatar
|
||||
</td>
|
||||
<td>
|
||||
<input type='file' name='avatar' />
|
||||
</td>
|
||||
</tr>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
<td>
|
||||
<input type='submit' value="Envoyer le nouvel avatar" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<!-- Resize avatar -->
|
||||
<?php
|
||||
if(!isset($noAvatar)){
|
||||
?><div class="bouton_edit_image_parametres">
|
||||
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>&editimage">
|
||||
<?php echo code_inc_img(path_img_asset('image_edit.png')); ?> Redimensionner votre avatar
|
||||
</a>
|
||||
</div><?<?php
|
||||
} ?>
|
||||
|
||||
<!-- Use Webcam -->
|
||||
<div class="bouton_edit_image_parametres">
|
||||
<a href="action.php?actionid=26">
|
||||
<?php echo code_inc_img(path_img_asset('webcam.png')); ?> Utilisez votre WebCam pour changer d'avatar
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- Delete avatar -->
|
||||
<div class="bouton_edit_image_parametres">
|
||||
<a href="#" onClick="confirmaction('action.php?actionid=27&type=avatar', 'Voulez-vous vraiment supprimer votre avatar ?');">
|
||||
<?php echo code_inc_img(path_img_asset('image_delete.png')); ?> Supprimer votre avatar
|
||||
</a>
|
||||
</div>
|
||||
<?php
|
59
inc/pages/settings/avatarVisibility.inc.php
Normal file
59
inc/pages/settings/avatarVisibility.inc.php
Normal file
@ -0,0 +1,59 @@
|
||||
<?php
|
||||
/**
|
||||
* Change avatar visibility settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//On vérifie si il faut changer le niveau de visibilité
|
||||
if(isset($_POST['niveau_visibilite_avatar']))
|
||||
{
|
||||
//Préparation du contrôle de la valeu
|
||||
$nouveau_niveau_visibilite_avatar = $_POST['niveau_visibilite_avatar'];
|
||||
|
||||
//Contrôle de la valeur
|
||||
if($nouveau_niveau_visibilite_avatar == 1 OR $nouveau_niveau_visibilite_avatar == 2 OR $nouveau_niveau_visibilite_avatar == 3)
|
||||
{
|
||||
//Modification de la valeur
|
||||
if(modifie_niveau_visibilite_avatar($_SESSION['ID'], $nouveau_niveau_visibilite_avatar))
|
||||
{
|
||||
//Message de succès
|
||||
?><script type="text/javascript">affiche_notification_succes("Le niveau de visibilité de l'avatar a été changé.", "", 5);</script><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
//Message d'erreur
|
||||
?><script type="text/javascript">affiche_notification_erreur("La modification ud niveau de visibilité de l'avatar a échouée.", "", 5);</script><?php
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//Message d'erreur
|
||||
?><script type="text/javascript">affiche_notification_erreur("La valeur saisie pour le niveau de visibilité de l'avatar est incorrecte.", "", 5);</script><?php
|
||||
}
|
||||
}
|
||||
|
||||
//Récupération du niveau actuel de visibilité de l'avatar
|
||||
$niveau_visibilite_avatar = get_niveau_visibilite_avatar($_SESSION['ID']);
|
||||
|
||||
?>
|
||||
<h3>Visibilité de votre avatar</h3>
|
||||
<p><i>Cette fonctionalité vous permet de choisir quelle type d'utilisateur pourra visualiser votre avatar.</i></p>
|
||||
<form action='<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>' method="post">
|
||||
<p>Quelle groupe de personne pourra voir votre avatar: </p>
|
||||
|
||||
<!-- Choix du niveau avec comme pré-définit le niveau actuel -->
|
||||
<label><input type="radio" name="niveau_visibilite_avatar" value="1" <?php echo($niveau_visibilite_avatar == 1 ? "checked" : ""); ?> /> Moi et mes amis </label> <br />
|
||||
<label><input type="radio" name="niveau_visibilite_avatar" value="2" <?php echo($niveau_visibilite_avatar == 2 ? "checked" : ""); ?> /> Moi, mes amis et les personnes connectées </label> <br />
|
||||
<label><input type="radio" name="niveau_visibilite_avatar" value="3" <?php echo($niveau_visibilite_avatar == 3 ? "checked" : ""); ?> /> Tout le monde </label> <br />
|
||||
<!-- Fin de: Choix de niveau avec comme pré-définit le niveau actuel -->
|
||||
|
||||
<!-- Bouton de confirmation -->
|
||||
<input type="submit" value="Modifier" />
|
||||
<!-- Fin de: Bouton de confirmation -->
|
||||
</form>
|
||||
<!--<a href="action.php?actionid=4">Envoyer les données par mail</a>-->
|
||||
<?php
|
151
inc/pages/settings/backgroundImg.inc.php
Normal file
151
inc/pages/settings/backgroundImg.inc.php
Normal file
@ -0,0 +1,151 @@
|
||||
<?php
|
||||
/**
|
||||
* Change user background image
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
?>
|
||||
<h3>Image de fond</h3>
|
||||
<?php
|
||||
//Vérifions si une image de fond a déjà été posté
|
||||
if ((isset($_FILES['imgfond'])) AND ($_FILES['imgfond']['error'] == 0))
|
||||
{
|
||||
// Testons si l'extension est autorisée
|
||||
$infosfichier = pathinfo($_FILES['imgfond']['name']);
|
||||
$extension_upload = $infosfichier['extension'];
|
||||
$extensions_autorisees = array('jpg', 'jpeg');
|
||||
|
||||
//On supprime l'ancienne image de fond si il y en a une
|
||||
if(file_exists(relativeUserDataFolder('imgfond/adresse_imgfond/'.$_SESSION['ID'].'.txt')))
|
||||
{
|
||||
unlink(relativeUserDataFolder('imgfond/'.file_get_contents(relativeUserDataFolder('imgfond/adresse_imgfond/'.$_SESSION['ID'].'.txt'))));
|
||||
}
|
||||
|
||||
//Définition de l'adresse de l'image de fond
|
||||
$adresse_img_fond = sha1(time()).".jpg";
|
||||
|
||||
//On modifie la date d'enregistrement de l'image de fond
|
||||
file_put_contents(relativeUserDataFolder("imgfond/adresse_imgfond/".$_SESSION['ID'].".txt"), $adresse_img_fond);
|
||||
|
||||
// On peut valider l'image de fond et copier vers son répertoire de destination
|
||||
move_uploaded_file($_FILES['imgfond']['tmp_name'], relativeUserDataFolder('imgfond/'.$adresse_img_fond));
|
||||
|
||||
echo "<p>".code_inc_img(path_img_asset('succes.png'), "Succè")." L'envoi a bien été effectué !</p>";
|
||||
|
||||
}
|
||||
|
||||
//Vérifions si il faut redimmensionner l'image de fond
|
||||
if(isset($_GET['editimage']))
|
||||
{
|
||||
echo "<p>Veuillez maintenant choisir quelle partie de l'image sera votre image de fond :</p>";
|
||||
|
||||
echo imgfond($_SESSION['ID'], "./", "", "", "photo"); ?>
|
||||
<style type="text/css">#photo{max-width: none !important;}</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function () {
|
||||
$('#photo').imgAreaSelect({
|
||||
handles: true,
|
||||
x1: 0, y1: 0, x2: 128, y2: 128,
|
||||
onSelectEnd: function (img, selection) {
|
||||
$('input[name="x1"]').val(selection.x1);
|
||||
$('input[name="y1"]').val(selection.y1);
|
||||
$('input[name="x2"]').val(selection.x2);
|
||||
$('input[name="y2"]').val(selection.y2);
|
||||
},
|
||||
maxHeight: 200,
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>&editimgfond" method="post">
|
||||
<input type="hidden" name="x1" value="0" />
|
||||
<input type="hidden" name="y1" value="0" />
|
||||
<input type="hidden" name="x2" value="128" />
|
||||
<input type="hidden" name="y2" value="128" />
|
||||
<input type="submit" name="submit" value="Enregistrer" />
|
||||
</form><?php
|
||||
|
||||
//On évite les problèmes
|
||||
die();
|
||||
|
||||
}
|
||||
|
||||
//Vérifions si il faut modifier l'image de fond
|
||||
if(isset($_GET['editimgfond']) && isset($_POST['x1']) && isset($_POST['y1']) && isset($_POST['x2']) && isset($_POST['y2']))
|
||||
{
|
||||
//Définition de l'adresse de l'image de fond
|
||||
$adresse_img_fond = sha1(time()).".jpg";
|
||||
|
||||
//On redimensionne l'image
|
||||
redimensionnne_enregistre_image(
|
||||
$_POST['x1'],
|
||||
$_POST['x2'],
|
||||
$_POST['y1'],
|
||||
$_POST['y2'],
|
||||
relativeUserDataFolder('imgfond/'.file_get_contents(relativeUserDataFolder("imgfond/adresse_imgfond/".$_SESSION['ID'].".txt"))),
|
||||
relativeUserDataFolder("imgfond/".$adresse_img_fond),
|
||||
$_POST['x2']-$_POST['x1'],
|
||||
200,
|
||||
"no"
|
||||
);
|
||||
|
||||
//On modifie la date d'enregistrement de l'avatar
|
||||
file_put_contents(relativeUserDataFolder("imgfond/adresse_imgfond/".$_SESSION['ID'].".txt"), $adresse_img_fond);
|
||||
|
||||
//Message de succès
|
||||
?><p><strong>Félicitations! Votre nouvelle image de fond a bien été configurée.</strong></p><?php
|
||||
}
|
||||
|
||||
//Requete de l'existence d'une image de fond
|
||||
if(file_exists(relativeUserDataFolder("imgfond/adresse_imgfond/".$_SESSION['ID'].".txt")))
|
||||
{
|
||||
echo imgfond($_SESSION['ID'], "./", "", 32, "img_fond");
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "Vous n'avez pas encore défini d'image de fond. Vous pouvez en envoyer une sur cette page, ce qui permettra de la personnaliser en y ajoutant une touche de votre personnalité.";
|
||||
}
|
||||
?>
|
||||
|
||||
<!-- New background image form -->
|
||||
<h5>Formulaire d'envoi d'une image de fond :</h5>
|
||||
<form action='<?php $_SERVER['PHP_SELF']; ?>?c=imgfond' name="Envoi d'une nouvelle image de fond" method='post' enctype="multipart/form-data">
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
Sélectionnez la nouvelle image de fond (grande et rectangulaire si possible) :
|
||||
</td>
|
||||
<td>
|
||||
<input type='file' name='imgfond' />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
Confirmer l'envoi
|
||||
</td>
|
||||
<td>
|
||||
<input type='submit' value="Modifier l'imgage de fond" />
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<!-- Resize image link -->
|
||||
<div class="bouton_edit_image_parametres">
|
||||
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>&editimage">
|
||||
<?php echo code_inc_img(path_img_asset('image_edit.png')); ?> Redimensionner votre image de fond
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<!-- Delete background image link -->
|
||||
<div class="bouton_edit_image_parametres">
|
||||
<a href="#" onClick="confirmaction('action.php?actionid=27&type=imgfond', 'Voulez-vous vraiment supprimer votre image de fond ?');">
|
||||
<?php echo code_inc_img(path_img_asset('image_delete.png')); ?> Supprimer votre image de fond
|
||||
</a>
|
||||
</div>
|
||||
<?php
|
50
inc/pages/settings/chat.inc.php
Normal file
50
inc/pages/settings/chat.inc.php
Normal file
@ -0,0 +1,50 @@
|
||||
<?php
|
||||
/**
|
||||
* Change chat settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//On vérifie si il faut vider le chat
|
||||
if(isset($_GET['vide']))
|
||||
{
|
||||
//Requete de suppression
|
||||
$sql = 'DELETE FROM chat WHERE ID_personne = '.$_SESSION['ID'].' ';
|
||||
|
||||
//Execution de la requete
|
||||
$videchat = $bdd->query($sql);
|
||||
|
||||
//On affiche un message de succès
|
||||
echo "<p>".code_inc_img(path_img_asset('succes.png'), "Succè")." Le chat a bien été vidé !</p>";
|
||||
}
|
||||
|
||||
?>
|
||||
<!-- Parametres du chat -->
|
||||
<h3>Parametres du chat</h3>
|
||||
<p>Affichage de tous vos posts</p>
|
||||
<table>
|
||||
<?php
|
||||
//Requete de recherche de post
|
||||
$sql='SELECT * FROM chat WHERE ID_personne = '.$_SESSION['ID'];
|
||||
|
||||
//Execution de la requete
|
||||
$requete = $bdd->query($sql);
|
||||
|
||||
//Affichage des résultats
|
||||
while ($afficherchat = $requete->fetch())
|
||||
{
|
||||
?>
|
||||
<tr>
|
||||
<td><?php echo $afficherchat['date_envoi']; ?></td>
|
||||
<td><?php echo corrige_accent_javascript(bloquebalise(corrige_caracteres_speciaux($afficherchat['message']))); ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</table>
|
||||
<p><a href='<?php echo $_SERVER['PHP_SELF']; ?>?c=chat&vide=yes'>Vider l'historique du chat</a></p>
|
||||
<!-- Fin de: parametres du chat -->
|
||||
<?php
|
30
inc/pages/settings/cleanAccount.inc.php
Normal file
30
inc/pages/settings/cleanAccount.inc.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
/**
|
||||
* lean account settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
?>
|
||||
<h3>Nettoyage du compte</h3>
|
||||
<p><i>Vous permet de "nettoyer votre compte" en supprimant des traces tel que vos posts dans le chat privé ou vos anciennes notifications.</i></p>
|
||||
<p>Ce qui sera fait :</p>
|
||||
<p>
|
||||
<ul>
|
||||
<li>
|
||||
Suppression de toute vos notifications et de toute les notifications dont vous êtes à l'origine
|
||||
</li>
|
||||
<li>
|
||||
Suppression de toute vos posts dans le chat privé
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
<form action='action.php?actionid=28' method="post">
|
||||
<p>Pour des raisons de sécurité, veuillez saisir votre mot de passe : </p>
|
||||
<input type="password" name="password" placeholder="Mot de passe" />
|
||||
<input type='submit' value='Effectuer la maintenance' />
|
||||
</form>
|
||||
<?php
|
23
inc/pages/settings/error.inc.php
Normal file
23
inc/pages/settings/error.inc.php
Normal file
@ -0,0 +1,23 @@
|
||||
<?php
|
||||
/**
|
||||
* Settings page not found
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//This message should appear only when an error occur.
|
||||
?><table align='center'>
|
||||
<tr>
|
||||
<td>
|
||||
<?php echo code_inc_img(path_img_asset('erreur.png')); ?>
|
||||
</td>
|
||||
<td>
|
||||
<p><b>Erreur :</b> La rubrique demandée n'a pas été trouvée ou n'existe pas</p>
|
||||
<p>Pour résoudre le problème, retournez à la page précédente et actualisez-la.</p>
|
||||
<p>N'hésitez pas à nous <a href='<?php echo siteURL(); ?>contact.php'>contacter</a> pour de plus amples informations.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table><?php
|
22
inc/pages/settings/exportData.inc.php
Normal file
22
inc/pages/settings/exportData.inc.php
Normal file
@ -0,0 +1,22 @@
|
||||
<?php
|
||||
/**
|
||||
* Export datas
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
?>
|
||||
<h3>Export des informations personnelles</h3>
|
||||
<p>
|
||||
<i>Vous permet de générer une page web contenant toute les informations personnelles vous concernant dans une page web que vous pourrez enregister ou imprimer. Vous permet de contrôler l'intégralité de votre activité.</i>
|
||||
</p>
|
||||
<form action='exportdonnees.php' method="post">
|
||||
<p>Pour des raisons de sécurité, veuillez saisir votre mot de passe : </p>
|
||||
<input type="password" name="password" placeholder="Mot de passe" />
|
||||
<input type='submit' value='Exporter vos données personelles vers une page web' />
|
||||
</form>
|
||||
<!--<a href="action.php?actionid=4">Envoyer les données par mail</a>-->
|
||||
<?php
|
274
inc/pages/settings/general.inc.php
Normal file
274
inc/pages/settings/general.inc.php
Normal file
@ -0,0 +1,274 @@
|
||||
<?php
|
||||
/**
|
||||
* Change general settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
?><div class="metro general_settings">
|
||||
<h3><?php echo $lang[56]; ?></h3>
|
||||
<?php
|
||||
//Vérification de l'existence d'une demande de vérification
|
||||
if((isset($_POST['nom'])) && (isset($_POST['prenom'])) && (isset($_POST['public'])))
|
||||
{
|
||||
if(!isset($_POST['affiche_chat']))
|
||||
{
|
||||
$_POST['affiche_chat'] = $afficher['affiche_chat'];
|
||||
}
|
||||
|
||||
//On vérifie si la page est ouverte
|
||||
if (isset($_POST['pageouverte']) && $_POST['public'] == '1')
|
||||
{
|
||||
//On rend la page ouverte
|
||||
$pageouverte = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Sinon elle est fermée
|
||||
$pageouverte = 0;
|
||||
}
|
||||
|
||||
//On vérifie si les commentaires doivent être bloqués
|
||||
if (isset($_POST['bloquecommentaire']))
|
||||
{
|
||||
//On bloque les commentaires
|
||||
$bloquecommentaire = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Sinon ils sont accessibles
|
||||
$bloquecommentaire = 0;
|
||||
}
|
||||
|
||||
//On vérifie si les posts en provenance des amis sont autorisés
|
||||
$autoriser_post_amis = (isset($_POST['autoriser_post_amis']) ? 1 : 0);
|
||||
|
||||
//On vérifie si l'envoi de mail est autorisé
|
||||
$autorise_mail = (isset($_POST['autorise_mail']) ? 1 : 0);
|
||||
|
||||
//On vérifie si la liste d'amis est publique
|
||||
$liste_amis_publique = (isset($_POST['liste_amis_publique']) ? 1 : 0);
|
||||
|
||||
//On vérifie si l'on doit structurer les posts en plusieurs pages
|
||||
$mode_pages = (isset($_POST['mode_pages']) ? 1 : 0);
|
||||
|
||||
//On vérifie si l'on doit autoriser le système de multiauthentification pour ce compte ou non
|
||||
$allow_multilogin = (isset($_POST['allow_multilogin']) ? 1 : 0);
|
||||
|
||||
//Sécurité pour l'adresse URL
|
||||
$site_web = str_replace('javascript:', '', $_POST['site_web']);
|
||||
|
||||
//Modification de la base de données
|
||||
$sql = "UPDATE utilisateurs SET nom = ?, prenom = ?, affiche_chat = ?, public = ?, pageouverte = ".$pageouverte.", site_web = ?, question1 = ?, reponse1 = ?, question2 = ?, reponse2 = ?, bloquecommentaire = ?, autoriser_post_amis = ?, autorise_mail = ?, liste_amis_publique = ?, mode_pages = ?, allow_multilogin = ? WHERE ID = ?";
|
||||
$modif = $bdd->prepare($sql);
|
||||
$modif->execute(array($_POST['nom'], $_POST['prenom'], $_POST['affiche_chat'], $_POST['public'], $site_web, $_POST['question1'], $_POST['reponse1'], $_POST['question2'], $_POST['reponse2'], $bloquecommentaire, $autoriser_post_amis, $autorise_mail, $liste_amis_publique, $mode_pages, $allow_multilogin, $_SESSION['ID']));
|
||||
|
||||
//Vérification de l'autorisation d'envoi de mails
|
||||
if($active_envoi_mail == "oui")
|
||||
{
|
||||
//Envoi d'un message au demandé
|
||||
$send_mail = true;
|
||||
$sujet = "Modification de vos paramètres";
|
||||
$description_rapide = "Les paramètres de votre compte ont été modifiés.";
|
||||
$nom_destinataire = $afficher['prenom']." ".$afficher['nom'];
|
||||
$adresse_mail_destinataire = $afficher['mail'];
|
||||
|
||||
//Rechargement des informations
|
||||
$afficher = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
|
||||
$texte_message = "
|
||||
<h3 class='titre'>Modification de vos paramètres</h3>
|
||||
<p>Voici les nouveau paramètres de votre compte:</p>
|
||||
<table align='center'>
|
||||
<tr><td>ID </td><td>".$afficher['ID']."</td></tr>
|
||||
<tr><td>Prénom :</td><td>".$afficher['prenom']."</td></tr>
|
||||
<tr><td>Nom :</td><td>".$afficher['nom']."</td></tr>
|
||||
<tr><td>Adresse mail :</td><td>".$afficher['mail']."</td></tr>
|
||||
<tr><td>Page publique :</td><td>".($afficher['public'] == 1 ? "Oui" : "Non")."</td></tr>
|
||||
<tr><td>Page ouverte :</td><td>".($afficher['pageouverte'] == 1 ? "Oui" : "Non")."</td></tr>
|
||||
<tr><td>Structurer les posts en plusieurs pages :</td><td>".($afficher['mode_pages'] == 1 ? "Oui" : "Non")."</td></tr>
|
||||
<tr><td>Autoriser Comunic à m'envoyer des mails</td><td>".($afficher['autorise_mail'] == 1 ? "Oui" : "Non")."</td></tr>
|
||||
<tr><td>Adresse de votre site web (optionnel)</td><td>".$afficher['site_web']."</td></tr>
|
||||
<tr><td>Autoriser la gestion de ce compte depuis un autre compte ? </td><td>".($afficher['allow_multilogin'] == 1 ? "Oui" : "Non")."</td></tr>
|
||||
<tr><td>Question de sécurité 1:</td><td>".$afficher['question1']."</td></tr>
|
||||
<tr><td>Réponse de sécurité 1:</td><td>".$afficher['reponse1']."</td></tr>
|
||||
<tr><td>Question de sécurité 2:</td><td>".$afficher['question2']."</td></tr>
|
||||
<tr><td>Réponse de sécurité 2:</td><td>".$afficher['reponse2']."</td></tr>
|
||||
</table>
|
||||
".$info_mail_securite."
|
||||
<p><strong>Important : Si vous n'avez pas changé vos paramètres, modifiez votre mot de passe et contactez-nous. Il se peut que quelqu'un ait piraté votre compte et récupéré votre mot de passe.</strong></p>
|
||||
<p><a href='".$urlsite."'>Connectez-vous</a> pour accéder à toute les paramètres de Comunic.</a></p>
|
||||
";
|
||||
|
||||
//Envoi du message
|
||||
include(websiteRelativePath().'inc/envoi_mail.php');
|
||||
}
|
||||
|
||||
//Actualisation de la page
|
||||
echo "Enregistrement des modification terminé, actualisation de la page....";
|
||||
echo '<meta http-equiv="refresh" content="0;URL=parametres.php">';
|
||||
die();
|
||||
}
|
||||
?>
|
||||
<form action='<?php echo $_SERVER['PHP_SELF']; ?>' method='post' id="general">
|
||||
<?php
|
||||
/*//Recherche des informations personelles
|
||||
$sql = "SELECT * utilisateurs WHERE ID='".$_SESSION['ID']."'";
|
||||
//Exécution de la requete
|
||||
$requete = $bdd->query($sql);
|
||||
|
||||
//Recherche d'éventuelles erreurs
|
||||
if(!$afficher = $requete->fetch())
|
||||
{
|
||||
echo "<p>Un problème technique est survenu. Merci de réessayer plus tard.</p>";
|
||||
die();
|
||||
}
|
||||
|
||||
//Fermeture de la requete
|
||||
$general->closeCursor();*/
|
||||
?><legend>Informations de connexion</legend>
|
||||
<label>Numéro de compte et <?php echo $lang[14]; ?></label>
|
||||
<div class="input-control text size2">
|
||||
<input type="text" disabled value="<?php echo $afficher['ID']; ?>" />
|
||||
</div>
|
||||
<div class="input-control text size4">
|
||||
<input type="text" disabled value="<?php echo $afficher['mail']; ?>" />
|
||||
</div>
|
||||
|
||||
<label><?php echo $lang[12]; ?> et <?php echo $lang[13]; ?></label>
|
||||
<div class="input-control text size3">
|
||||
<input type='text' name='prenom' value='<?php echo $afficher['prenom']; ?>' />
|
||||
</div>
|
||||
<div class="input-control text size3">
|
||||
<input type='text' name='nom' value='<?php echo $afficher['nom']; ?>' />
|
||||
</div>
|
||||
|
||||
<label><?php echo $lang[1]; ?></label>
|
||||
<div class="input-control">
|
||||
<a href='<?php echo $_SERVER['PHP_SELF']; ?>?c=password' title='Cliquez ici pour modifier le mot de passe'><?php echo $lang[58]; ?></a>
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<legend>Personnalisation générale du compte</legend>
|
||||
<?php if($activer_publique_chat == "oui") { ?><label>Affichage du chat automatique</label><div class="input-control select"><select name='affiche_chat'><option <?php if ($afficher['affiche_chat'] == 1) echo "selected"; ?> value='1' />Oui <option <?php if ($afficher['affiche_chat'] == 0) echo "selected"; ?> value='0' />Non</select></div><?php } ?>
|
||||
|
||||
<label>Votre page est... <a href='aide.php?id=6' target='_blank'><?php echo code_inc_img(path_img_asset('help.png')); ?></a></label>
|
||||
<div class="input-control select size6">
|
||||
<select name='public'>
|
||||
<option <?php if ($afficher['public'] == 1) echo "selected"; ?> value='1' />Publique
|
||||
<option <?php if ($afficher['public'] == 0) echo "selected"; ?> value='0' />Privee
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<?php // On affiche cette ligne uniqument si la page est publique
|
||||
if($afficher['public'] == 1)
|
||||
{
|
||||
?><div class="input-control switch">
|
||||
<label>
|
||||
<input type='checkbox' <?php
|
||||
if ($afficher['pageouverte'] == 1)
|
||||
echo 'checked';
|
||||
?> name='pageouverte' /><span class="check"></span> Page ouverte <strong>Attention: Cette option rend votre page accessible aux personnes non connectées!</strong>
|
||||
</label>
|
||||
</div><?php
|
||||
}
|
||||
?>
|
||||
|
||||
<?php /* On affiche cette ligne uniqument si la page est ouverte */ if ($afficher['pageouverte'] == 1) echo '<p>Votre page est accessible à cette adresse : '.$urlsite.'?id='.$afficher['ID'].'</p>';?>
|
||||
|
||||
<div class="input-control switch">
|
||||
<label>
|
||||
<input type='checkbox' name='bloquecommentaire' <?php if ($afficher['bloquecommentaire'] == 1) echo 'checked'; ?> />
|
||||
<span class="check"></span>
|
||||
Interdire le post de commentaires sur ma page
|
||||
</label>
|
||||
</div><br />
|
||||
|
||||
<div class="input-control switch">
|
||||
<label>
|
||||
<input type='checkbox' name='autoriser_post_amis' <?php if ($afficher['autoriser_post_amis'] == 1) echo 'checked'; ?> />
|
||||
<span class="check"></span>
|
||||
Autoriser les posts provenant de mes amis
|
||||
</label>
|
||||
</div><br />
|
||||
|
||||
<div class="input-control switch">
|
||||
<label>
|
||||
<input type='checkbox' name='mode_pages' <?php if ($afficher['mode_pages'] == 1) echo 'checked'; ?> />
|
||||
<span class="check"></span>
|
||||
Structurer mes posts en plusieurs pages (En développement)
|
||||
</label>
|
||||
</div><br />
|
||||
|
||||
<div class="input-control switch">
|
||||
<label>
|
||||
<input type='checkbox' name='autorise_mail' <?php if ($afficher['autorise_mail'] == 1) echo 'checked'; ?> />
|
||||
<span class="check"></span>
|
||||
Autoriser Comunic à m'envoyer des mails (ne concerne pas les mails de sécurité, qui sont systématiquement envoyés.)
|
||||
</label>
|
||||
</div><br />
|
||||
|
||||
<!-- Liste d'amis publique -->
|
||||
<div class="input-control switch">
|
||||
<label>
|
||||
<input type='checkbox' name='liste_amis_publique' <?php if ($afficher['liste_amis_publique'] == 1) echo 'checked'; ?> />
|
||||
<span class="check"></span>
|
||||
Rendre ma liste d'amis publique
|
||||
</label>
|
||||
</div><br />
|
||||
<!-- Fin de: Liste d'amis publique -->
|
||||
|
||||
<!-- Autorisation de gérer ce compte depuis un autre compte -->
|
||||
<div class="input-control switch">
|
||||
<label>
|
||||
<input type='checkbox' name='allow_multilogin' <?php if ($afficher['allow_multilogin'] == 1) echo 'checked'; ?> />
|
||||
<span class="check"></span>
|
||||
Autoriser ce compte a être géré depuis un autre compte (multi-authentification)
|
||||
</label>
|
||||
</div><br />
|
||||
<!-- Fin de: Autorisation de gérer ce compte depuis un autre compte -->
|
||||
|
||||
<p> </p>
|
||||
|
||||
<legend>Site web (optionnel)</legend>
|
||||
<label>Adresse URL</label>
|
||||
<div class="input-control text size4">
|
||||
<input type='text' name='site_web' placeholder="http://" value='<?php echo $afficher['site_web']; ?>' />
|
||||
</div>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<legend>Préparation à l'oubli de mot de passe</legend>
|
||||
<label>
|
||||
Question de sécurité 1
|
||||
|
||||
<!-- Help -->
|
||||
<a href='aide.php?id=7' title="En savoir plus..." target='_blank'> <?php echo code_inc_img(path_img_asset('help.png')); ?></a>
|
||||
|
||||
<small>Ne faites pas attention aux majuscules/minuscules.</small>
|
||||
</label>
|
||||
<div class="input-control text size3">
|
||||
<input type='text' name='question1' placeholder="Question 1" value='<?php echo echap_guillemet_html($afficher['question1']); ?>' />
|
||||
</div>
|
||||
<div class="input-control text size3">
|
||||
<input type='text' name='reponse1' placeholder="Réponse 1" value='<?php echo echap_guillemet_html($afficher['reponse1']); ?>' />
|
||||
</div>
|
||||
|
||||
<label>Question de sécurité 2 <small>Ne faites pas attention aux majuscules/minuscules.</small></label>
|
||||
<div class="input-control text size3">
|
||||
<input type='text' name='question2' placeholder="Question 2" value='<?php echo echap_guillemet_html($afficher['question2']); ?>' />
|
||||
</div>
|
||||
<div class="input-control text size3">
|
||||
<input type='text' name='reponse2' placeholder="Réponse 2" value='<?php echo echap_guillemet_html($afficher['reponse2']); ?>' />
|
||||
</div>
|
||||
|
||||
<label><input type='submit' value='<?php echo $lang[57]; ?>' /></label>
|
||||
|
||||
<label><span id="ciblesuppressioncompte"><h6><a onClick="confirmdeleteaccount()" title="Supprimer votre compte">Supprimer votre compte</a></h6></span></label>
|
||||
</table>
|
||||
</form>
|
||||
</div><?php
|
173
inc/pages/settings/groupePersonnes.inc.php
Normal file
173
inc/pages/settings/groupePersonnes.inc.php
Normal file
@ -0,0 +1,173 @@
|
||||
<?php
|
||||
/**
|
||||
* Change groups settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//On vérifie si il faut ajouter (ou modifier) un groupe
|
||||
if(isset($_POST['nom_groupe']) AND isset($_POST['choixpersonne']))
|
||||
{
|
||||
if($_POST['nom_groupe'] != "")
|
||||
{
|
||||
if(is_array($_POST['choixpersonne']))
|
||||
{
|
||||
if(count($_POST['choixpersonne'] > 0))
|
||||
{
|
||||
//On enregistre le groupe
|
||||
$nom_groupe = $_POST['nom_groupe'];
|
||||
|
||||
//Listing de toute les personnes
|
||||
$liste_id = array();
|
||||
foreach($_POST['choixpersonne'] as $id=>$value)
|
||||
$liste_id[]= $id;
|
||||
$liste_id = implode("|", $liste_id);
|
||||
|
||||
if(!isset($_POST['edit']))
|
||||
{
|
||||
//Enregistrement dans la base de données
|
||||
$sql = "INSERT INTO groupe_personnes (ID_personne, nom, date_ajout, liste_ID) VALUES (?, ?, NOW(), ?)";
|
||||
$insertion = $bdd->prepare($sql);
|
||||
$insertion->execute(array($_SESSION['ID'], $nom_groupe, $liste_id));
|
||||
|
||||
//Message de succès
|
||||
?><script type="text/javascript">affiche_notification_succes("Le groupe <?php echo $nom_groupe; ?> vient d'être enregistré avec succès.");</script><?php
|
||||
}
|
||||
else
|
||||
{
|
||||
$edit = $_POST['edit']*1;
|
||||
if($edit > 0)
|
||||
{
|
||||
//Modification de la base de données
|
||||
$sql = "UPDATE groupe_personnes SET nom = ?, liste_ID = ? WHERE ID_personne = ? AND ID = ?";
|
||||
$insertion = $bdd->prepare($sql);
|
||||
$insertion->execute(array($nom_groupe, $liste_id, $_SESSION['ID'], $edit));
|
||||
|
||||
//Message de succès
|
||||
?><script type="text/javascript">affiche_notification_succes("Le groupe <?php echo $nom_groupe; ?> vient d'être modifié avec succès.");</script><?php
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?><h3>Groupe de personnes</h3>
|
||||
<div class="metro gestion_groupe_personnes"><?php
|
||||
|
||||
//Ajout (ou modification) d'un groupe de personnes
|
||||
//Recherche des information sur le groupe (si modification)
|
||||
$nom_groupe = "";
|
||||
$liste_amis_checked = array();
|
||||
if(isset($_GET['edit']))
|
||||
{
|
||||
$sql = "SELECT * FROM groupe_personnes WHERE ID = ? AND ID_personne = ?";
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($_GET['edit']*1, $_SESSION['ID']));
|
||||
|
||||
//Enregistrement du résultat
|
||||
if(!$info_groupe = $requete->fetch())
|
||||
{
|
||||
unset($_GET['edit']);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Préparation du traitement
|
||||
$nom_groupe = $info_groupe['nom'];
|
||||
$liste_amis_checked = explode('|', $info_groupe['liste_ID']);
|
||||
}
|
||||
|
||||
//Fermeture de la requête
|
||||
$requete->closeCursor();
|
||||
}
|
||||
|
||||
//Titre du formulaire
|
||||
if(!isset($info_groupe['ID'])) {
|
||||
?><p>Ajout d'un nouveau groupe :</p><?php
|
||||
} else {
|
||||
?><p>Modification du groupe :</p><?php
|
||||
}
|
||||
|
||||
//Ouverture du formulaire
|
||||
?><form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>" method="post">
|
||||
<div class="input-control text">
|
||||
<input type="text" name="nom_groupe" value="<?php echo $nom_groupe; ?>" placeholder="Nom du groupe" required />
|
||||
</div><?php
|
||||
|
||||
//Si nécessaire, on indique qu'il s'agit d'une modification de groupe
|
||||
if(isset($info_groupe['ID'])) echo "<input type='hidden' name='edit' value='".$info_groupe['ID']."' />";
|
||||
|
||||
//Listing des amis
|
||||
$liste_amis = liste_amis($_SESSION['ID'], $bdd, 1);
|
||||
|
||||
//Affichage de la liste en tant que formulaire
|
||||
foreach($liste_amis as $afficher_liste)
|
||||
{
|
||||
//Récupération des informations si nécessaire
|
||||
$id_amis = $afficher_liste;
|
||||
if(!isset($info_users[$id_amis]['table_utilisateurs']) OR !isset($info_users[$id_amis]['avatar_32_32']))
|
||||
{
|
||||
$info_users[$id_amis]['table_utilisateurs'] = cherchenomprenom($id_amis, $bdd);
|
||||
$info_users[$id_amis]['avatar_32_32'] = avatar($id_amis, "./", 32, 32);
|
||||
}
|
||||
|
||||
//Affichage de la proposition
|
||||
?><div class="input-control checkbox">
|
||||
<label>
|
||||
<input type="checkbox" <?php if(in_array($id_amis, $liste_amis_checked)) echo "checked"; ?> name="choixpersonne[<?php echo $id_amis; ?>]" />
|
||||
<span class="check"></span>
|
||||
<?php echo $info_users[$id_amis]['avatar_32_32']." ".$info_users[$id_amis]['table_utilisateurs']['prenom']." ".$info_users[$id_amis]['table_utilisateurs']['nom']; ?>
|
||||
</label>
|
||||
</div><?php
|
||||
}
|
||||
|
||||
//Fin du formulaire
|
||||
?><br /><input type="submit" value="<?php if(!isset($info_groupe['ID'])) echo "Ajouter"; else echo "Modifier"; ?> le groupe" /><?php
|
||||
?></form><?php
|
||||
|
||||
//Listing des groupes de personnes
|
||||
$liste = list_groupes_personnes($_SESSION['ID'], $bdd);
|
||||
|
||||
//Affichage de la liste
|
||||
foreach($liste as $afficher)
|
||||
{
|
||||
//On vérifie si il faut supprimer le groupe
|
||||
if(isset($_GET['delete_groupe']))
|
||||
{
|
||||
//Suppression du groupe
|
||||
$groupe = $_GET['delete_groupe']*1;
|
||||
|
||||
if($groupe == $afficher['ID'])
|
||||
{
|
||||
//Requête de suppression
|
||||
$sql = "DELETE FROM groupe_personnes WHERE ID_personne = ? AND ID = ?";
|
||||
$delete = $bdd->prepare($sql);
|
||||
$delete->execute(array($_SESSION['ID'], $groupe));
|
||||
|
||||
//On saute le groupe
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
//Affichage du nom du groupe
|
||||
echo "<h3>".$afficher['nom']." <a href='".$_SERVER['PHP_SELF']."?c=".$_GET['c']."&edit=".$afficher['ID']."'><img src='".path_img_asset("edit.png")."' title='Modifier le groupe' /></a>";
|
||||
echo "<small class='on_right'><a href='#' onClick='confirmaction(\"".$_SERVER['PHP_SELF']."?c=".$_GET['c']."&delete_groupe=".$afficher['ID']."\", \"Voulez-vous vraiment supprimer ce groupe ?\");'> Supprimer le groupe </a></small></h3>";
|
||||
|
||||
//Récupération de la liste des personnes
|
||||
$liste_personnes = explode("|", $afficher['liste_ID']);
|
||||
|
||||
foreach($liste_personnes as $nom_personnes)
|
||||
{
|
||||
$id_amis = $nom_personnes;
|
||||
if(!isset($info_users[$id_amis]['table_utilisateurs']) OR !isset($info_users[$id_amis]['avatar_32_32']))
|
||||
{
|
||||
$info_users[$id_amis]['table_utilisateurs'] = cherchenomprenom($id_amis, $bdd);
|
||||
$info_users[$id_amis]['avatar_32_32'] = avatar($id_amis, "./", 32, 32);
|
||||
}
|
||||
|
||||
echo "<span>".$info_users[$id_amis]['avatar_32_32']." ".$info_users[$id_amis]['table_utilisateurs']['prenom']." ".$info_users[$id_amis]['table_utilisateurs']['nom']." </span>";
|
||||
}
|
||||
}
|
236
inc/pages/settings/multiLogin.inc.php
Executable file
236
inc/pages/settings/multiLogin.inc.php
Executable file
@ -0,0 +1,236 @@
|
||||
<?php
|
||||
/**
|
||||
* Manage multiauth
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//On a besoin de l'ID du compte parent pour permettre l'exécution de cette page !
|
||||
if(!isset($_SESSION['ID_parent']))
|
||||
{
|
||||
//Rapport d'erreur à l'administration
|
||||
report_error('if(!isset($_SESSION[\'ID_parent\']))', 'La variable $_SESSION[\'ID_parent\'] n\'existe pas, elle est nécessaire à multi_login_settings.php (inc).');
|
||||
|
||||
//Affichage d'un message d'erreur
|
||||
affiche_message_erreur("Votre navigateur n'a pas bien été connecté à Comunic. Veuillez essayer de vous déconnecter et vous reconnecter et réessayer.");
|
||||
|
||||
//Fermeture
|
||||
exit();
|
||||
}
|
||||
|
||||
if(!isset($bdd))
|
||||
die('An error occured while accessing the BDD !');
|
||||
|
||||
//On vérifie si il faut retourner au compte principal
|
||||
if(isset($_GET['back_main_account']))
|
||||
{
|
||||
//Attribution de l'ID_parent à l'ID
|
||||
$_SESSION['ID'] = $_SESSION['ID_parent'];
|
||||
|
||||
//Retour à la page d'acceuil du site
|
||||
echo "<script>location.href='".$urlsite."';</script>";
|
||||
}
|
||||
|
||||
//On vérifie si il faut supprimer un compte
|
||||
if(isset($_GET['delete_entree']) AND isset($_GET['id']))
|
||||
{
|
||||
//Définition des variables
|
||||
$id_entree_to_delete = $_GET['delete_entree']*1;
|
||||
$id_personne_concernee_1 = $_GET['id']*1;
|
||||
$id_personne_concernee_2 = $_SESSION['ID_parent']*1;
|
||||
|
||||
if($id_entree_to_delete > 0 AND $id_personne_concernee_1 > 0 AND $id_personne_concernee_2 >0)
|
||||
{
|
||||
//Suppression de la base de données
|
||||
delete_sql("multi_login", "ID = ? AND ((ID_personne = ? AND ID_target = ?) OR (ID_target = ? AND ID_personne = ?))", $bdd, array(
|
||||
$id_entree_to_delete,
|
||||
$id_personne_concernee_1,
|
||||
$id_personne_concernee_2,
|
||||
$id_personne_concernee_1,
|
||||
$id_personne_concernee_2
|
||||
));
|
||||
|
||||
//Affichage d'un message de succès
|
||||
?><script>affiche_notification_succes("Le compte a bien été supprimé de la console de multi-authentification.");</script><?php
|
||||
}
|
||||
else
|
||||
//Afficher un message d'erreur
|
||||
affiche_message_erreur("Une erreur d'entré a empêché la suppression d'avoir lieu !", true);
|
||||
}
|
||||
|
||||
//On vérifie si il faut ajouter un compte
|
||||
if(isset($_POST['mail_new_account']) AND isset($_POST['pass_new_account']))
|
||||
{
|
||||
//On vérifie si les informations sont correctes
|
||||
$infos_user_add = connnecteruser($_POST['mail_new_account'], $_POST['pass_new_account'], $bdd, true, false, true);
|
||||
|
||||
if(!$infos_user_add)
|
||||
{
|
||||
//Afficher un message d'erreur
|
||||
affiche_message_erreur("L'adresse mail ou le mot de passe du compte saisi est/sont incorrects !", true);
|
||||
}
|
||||
elseif($infos_user_add['allow_multilogin'] != "1")
|
||||
{
|
||||
//Afficher un message d'erreur
|
||||
affiche_message_erreur("Ce compte refuse la multi-authentification !", true);
|
||||
}
|
||||
elseif($infos_user_add['ID'] == $_SESSION['ID_parent'])
|
||||
{
|
||||
//Afficher un message d'erreur
|
||||
affiche_message_erreur("Vous ne pouvez pas ajouter votre propre compte dans le gestionnaire de multi-authentification !", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
//On peut rajouter le comtpe à la liste des comptes connus
|
||||
insert_sql("multi_login", "ID_personne, ID_target, date_ajout, IP_ajout", "?, ?, NOW(), ?", $bdd, array(
|
||||
$_SESSION['ID_parent'],
|
||||
$infos_user_add['ID'],
|
||||
$_SERVER['REMOTE_ADDR']
|
||||
));
|
||||
|
||||
//Vérification de l'autorisation d'envoi de mails
|
||||
if($active_envoi_mail == "oui")
|
||||
{
|
||||
//Envoi d'un message au demandé
|
||||
$send_mail = true;
|
||||
$sujet = "Modification de vos paramètres de multi-authentification";
|
||||
$description_rapide = "Les paramètres de multi-authentification de votre compte ont été modifiés.";
|
||||
$nom_destinataire = $infos_user_add['prenom']." ".$infos_user_add['nom'];
|
||||
$adresse_mail_destinataire = $infos_user_add['mail'];
|
||||
|
||||
//Rechargement des informations
|
||||
$afficher = cherchenomprenom($_SESSION['ID_parent'], $bdd);
|
||||
|
||||
$texte_message = "
|
||||
<h3 class='titre'>Ajout de votre compte à la console de multi-authentification de ".$afficher['prenom']." ".$afficher['nom']."</h3>
|
||||
<p>Nous vous informons que votre compte a été ajouté à la console de multi-authentification de ".$afficher['prenom']." ".$afficher['nom'].". Si vous n'avez pas fait cette demande, prenez immédiatement contact avec l'administration de Comunic pour rapporter ce problè. ".$afficher['prenom']." ".$afficher['nom']." pourra désormais depuis son compte accéder au vôtre sans saisir votre mot de passe à chaque fois.</p>
|
||||
";
|
||||
|
||||
//Envoi du message
|
||||
include(websiteRelativePath('inc/envoi_mail.php'));
|
||||
}
|
||||
|
||||
//Affichage d'un message de succès
|
||||
?><script>affiche_notification_succes("Le compte a bien été ajouté à la console de multi-authentification!");</script><?php
|
||||
}
|
||||
}
|
||||
|
||||
//Récupération de la liste des comptes qui gèrent le compte de l'utilisateur courant, connecté
|
||||
$liste_managed = select_sql("multi_login", "ID_target = ?", $bdd, array($_SESSION['ID_parent']));
|
||||
|
||||
//Récupération de la liste des comptes qui peuvent être gérés par le compte de l'utilisateur courant, connecté
|
||||
$liste_accounts_user = select_sql("multi_login", "ID_personne = ?", $bdd, array($_SESSION['ID_parent']));
|
||||
|
||||
?><style type="text/css">
|
||||
.multi_account_listing img { vertical-align: middle; }
|
||||
|
||||
.volet_droit_parametres {
|
||||
max-width: 90% !important;
|
||||
text-align: justify;
|
||||
}
|
||||
</style>
|
||||
|
||||
<h3>Gestion de la multi-authentification</h3>
|
||||
<p>La multi-authentification vous permet de gérer plusieurs comptes rapidement en ne vous connectant qu'à un seul, le compte principal. Il vous est vivement conseillé de choisir un mot de passe sûr pour le compte principal.</p>
|
||||
|
||||
|
||||
<h4> Votre compte </h4>
|
||||
<p> Multi-authentification autorisée : <b><?php echo ($afficher['allow_multilogin'] == 1 ? "Autorisée" : "Interdite"); ?></b> (Voir la section <i>Général</i>)</p>
|
||||
<p> Ce compte peut être géré par : </p>
|
||||
<?php
|
||||
if(count($liste_managed) == 0)
|
||||
echo "<p><i>Votre compte n'est actuellement rattaché à aucun compte pour le moment.</i></p>";
|
||||
else
|
||||
{
|
||||
?><div class="grid multi_account_listing"><?php
|
||||
foreach($liste_managed as $afficher_entree)
|
||||
{
|
||||
?><div class="row"><?php
|
||||
//Recherche des informations de la personne
|
||||
$infos_personne_manager = cherchenomprenom($afficher_entree['ID_personne'], $bdd);
|
||||
|
||||
//Affichage de l'avatar
|
||||
echo avatar($infos_personne_manager['ID']);
|
||||
echo " ";
|
||||
|
||||
//Affichage du prénom et du nom
|
||||
echo "<a href='index.php?id=".$infos_personne_manager['ID']."'>".$infos_personne_manager['nom_complet']."</a>";
|
||||
echo " ";
|
||||
|
||||
echo "<img src='".path_img_asset('supp.png')."' class='a' title='Supprimer de la console' onClick='confirmaction(\"".$_SERVER['PHP_SELF']."?c=".$_GET['c']."&delete_entree=".$afficher_entree['ID']."&id=".$infos_personne_manager['ID']."\", \"Souhaitez-vous vraiment supprimer ".$infos_personne_manager['nom_complet']." de la liste des personnes pouvant accéder à votre compte ?\");' />";
|
||||
|
||||
?></div><?php
|
||||
}
|
||||
?></div><?php
|
||||
}
|
||||
?>
|
||||
<h4>Gérer un compte</h4>
|
||||
<p> Compte déjà gérés :</p>
|
||||
|
||||
<p> Ce compte peut accéder sans saisie de mots de passes aux comptes suivants : </p>
|
||||
<?php
|
||||
if(count($liste_accounts_user) == 0)
|
||||
echo "<p><i>Votre compte ne peut accéder actuellement à aucun compte.</i></p>";
|
||||
else
|
||||
{
|
||||
?><div class="grid multi_account_listing"><?php
|
||||
foreach($liste_accounts_user as $afficher_entree)
|
||||
{
|
||||
?><div class="row"><?php
|
||||
//Recherche des informations de la personne
|
||||
$infos_personne_managed = cherchenomprenom($afficher_entree['ID_target'], $bdd);
|
||||
|
||||
//On vérifie si il faut utiliser ce compte
|
||||
if(isset($_GET['use_account']))
|
||||
{
|
||||
if($_GET['use_account'] == $infos_personne_managed['ID'])
|
||||
{
|
||||
//Attribution de l'ID
|
||||
$_SESSION['ID'] = $infos_personne_managed['ID'];
|
||||
|
||||
//Redirection vers la page d'acceuil
|
||||
//header('Location: '.$urlsite);
|
||||
echo '<meta http-equiv="refresh" content="0;URL=index.php">';
|
||||
}
|
||||
}
|
||||
|
||||
//Affichage de l'avatar
|
||||
echo avatar($infos_personne_managed['ID']);
|
||||
echo " ";
|
||||
|
||||
//Affichage du prénom et du nom
|
||||
echo "<a href='index.php?id=".$infos_personne_managed['ID']."'>".$infos_personne_managed['nom_complet']."</a>";
|
||||
echo " ";
|
||||
|
||||
echo "<img src='".path_img_asset('supp.png')."' class='a' title='Supprimer de la console' onClick='confirmaction(\"".$_SERVER['PHP_SELF']."?c=".$_GET['c']."&delete_entree=".$afficher_entree['ID']."&id=".$infos_personne_managed['ID']."\", \"Souhaitez-vous vraiment supprimer ".$infos_personne_managed['nom_complet']." de la liste des personnes auxquelles vous pouvez accéder depuis votre compte ?\");' />";
|
||||
|
||||
echo "<a class='button' href='".$_SERVER['PHP_SELF']."?c=".$_GET['c']."&use_account=".$infos_personne_managed['ID']."'><i class='icon-enter'></i> Utiliser ce compte</a>";
|
||||
|
||||
?></div><?php
|
||||
}
|
||||
?></div><?php
|
||||
}
|
||||
?>
|
||||
|
||||
<!-- Ajout d'un compte pour la multi-authentification -->
|
||||
<p> Ajouter un compte : </p>
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>" method="post">
|
||||
<label>Adresse mail, mot de passe du compte</label>
|
||||
<!-- Adresse mail -->
|
||||
<div class="input-control text size3">
|
||||
<input type="mail" required name="mail_new_account" placeholder="Adresse mail du compte..." />
|
||||
</div>
|
||||
|
||||
<!-- Mot de passe -->
|
||||
<div class="input-control password size3">
|
||||
<input type="password" required name="pass_new_account" placeholder="Mot de passe du compte..." />
|
||||
</div>
|
||||
|
||||
<!-- Bouton de validation -->
|
||||
<input type="submit" value="Ajouter le compte" />
|
||||
</form>
|
||||
<!-- Fin du formulaire d'ajout de compte -->
|
64
inc/pages/settings/notifications.inc.php
Normal file
64
inc/pages/settings/notifications.inc.php
Normal file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
/**
|
||||
* Change notifications settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//Configuration des notifications
|
||||
if(isset($_POST['edit_notifications']))
|
||||
{
|
||||
//On vérifie si il faut activer l'ancienne version de notifications
|
||||
$bloquenotification = (isset($_POST['bloquenotification']) ? 0 : 1);
|
||||
|
||||
//On vérifie si les sons des notifications sont autorisés
|
||||
$bloque_son_notification = (isset($_POST['bloque_son_notification']) ? 1 : 0);
|
||||
|
||||
//Modification de la base de données
|
||||
$sql = "UPDATE utilisateurs SET bloquenotification = ?, bloque_son_notification = ? WHERE ID = ?";
|
||||
$modif = $bdd->prepare($sql);
|
||||
$modif->execute(array($bloquenotification, $bloque_son_notification, $_SESSION['ID']));
|
||||
|
||||
//Actualisation de la page
|
||||
echo "Enregistrement des modification terminé, actualisation de la page....";
|
||||
echo '<meta http-equiv="refresh" content="0;URL=parametres.php?c=notifications">';
|
||||
die();
|
||||
}
|
||||
|
||||
//Si demandé, vider le cache des notifications
|
||||
if(isset($_GET['vide_cache_notification']))
|
||||
{
|
||||
//On supprime les entrées de la base de données
|
||||
$sql = "DELETE FROM notification WHERE ID_personne = ?";
|
||||
$suppression = $bdd->prepare($sql);
|
||||
$suppression->execute(array($_SESSION['ID']));
|
||||
|
||||
?><font style="color: green"><?php echo code_inc_img(path_img_asset('succes.png')); ?> Le cache des notifications a été vidé.</font><?php
|
||||
}
|
||||
|
||||
?><form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>" method="post">
|
||||
<input type="hidden" name="edit_notifications" value="1"><!-- Correctif de formulaire : Il n'y a que des cases à cocher -->
|
||||
<p>Cette page vous permet de configurer le comportement de notifications.</p>
|
||||
<table>
|
||||
<tr><td>Activer l'ancienne version des notifications</td><td><input type='checkbox' name='bloquenotification' <?php if ($afficher['bloquenotification'] != 1) echo 'checked'; ?> /></td></tr>
|
||||
<tr><td>Bloquer le son de l'ancienne version de notifications</td><td><input type='checkbox' name='bloque_son_notification' <?php if ($afficher['bloque_son_notification'] == 1) echo 'checked'; ?> /></td></tr>
|
||||
<tr><td colspan="2"><input type="submit" value="Mettre à jour les paramètres de notification de Comunic" /></td></tr>
|
||||
<tr><td colspan="2"><p>Voici à quoi ressemble l'ancienne version des notifications :</p></td></tr>
|
||||
<tr><td colspan="2" style="text-align: center;"><?php echo code_inc_img(path_img_asset('notification_old.png'), "Ancienne version du système de notification."); ?></td></tr>
|
||||
<tr><td colspan="2"><p>Vous pouvez également écouter le son produit par l'ancien système de notifications:</p></td></tr>
|
||||
<tr><td colspan="2" style="text-align: center;">
|
||||
<audio controls>
|
||||
<source src='<?php echo path_audio_asset('notification.ogg'); ?>'></source>
|
||||
<source src='<?php echo path_audio_asset('notification.mp3'); ?>'></source>
|
||||
Votre navigateur est trop ancien pour écouter le son de l'ancien système de notifications.
|
||||
</audio>
|
||||
</td></tr>
|
||||
<tr><td colspan="2">Il est possible de vider le cache du système de notification :</td></tr>
|
||||
</table>
|
||||
</form>
|
||||
<!-- Pour vider le cache des notifications --><button onClick="document.location.href='<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>&vide_cache_notification'"> Vider le cache des notifications</button>
|
||||
<!-- Nettoyage automatique des notifications --><?php include('inc/nettoyage_automatique_notifications.php'); ?>
|
||||
<?php
|
28
inc/pages/settings/pages.inc.php
Normal file
28
inc/pages/settings/pages.inc.php
Normal file
@ -0,0 +1,28 @@
|
||||
<?php
|
||||
/**
|
||||
* Change pages settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//Titre
|
||||
?><h3>Gestion de vos pages</h3><?php
|
||||
|
||||
//Sous-titre
|
||||
?><h4>Liste de vos pages</h4><?php
|
||||
|
||||
//Récupération de la liste des pages
|
||||
$liste_pages = get_liste_pages($_SESSION['ID'], $bdd);
|
||||
|
||||
//Affichage de la liste des pages (temporaire)
|
||||
echo "<pre>";
|
||||
print_r($liste_pages);
|
||||
echo "</pre>";
|
||||
|
||||
//Sous-titre
|
||||
?><h4>Ajout d'une page</h4><?php
|
||||
|
||||
?>Fonctions en développement<?php
|
90
inc/pages/settings/password.inc.php
Normal file
90
inc/pages/settings/password.inc.php
Normal file
@ -0,0 +1,90 @@
|
||||
<?php
|
||||
/**
|
||||
* Change password
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
?>
|
||||
<h3>Modification du mot de passe</h3>
|
||||
<?php
|
||||
//Vérification de l'existence de l'existence demande de modification de mot de passe
|
||||
if((isset($_POST['oldpassword'])) && (isset($_POST['newpassword'])) && (isset($_POST['confirmnewpassword'])))
|
||||
{
|
||||
//Vérification de la corresponde du nouveau mot de passe et de sa confirmation
|
||||
if($_POST['newpassword'] != $_POST['confirmnewpassword'])
|
||||
{
|
||||
echo "<p><font color='#FF0000'><p>Erreur : Le nouveau mot de passe et sa confirmation ne correspondent pas. </font></p> \n";
|
||||
}
|
||||
else
|
||||
{
|
||||
//Requete de vérification de l'ancien mot de passe
|
||||
$oldpass = $bdd->query("SELECT * FROM utilisateurs WHERE ID = ".$_SESSION['ID']);
|
||||
$test = $oldpass->fetch();
|
||||
$oldpass->closeCursor();
|
||||
|
||||
//Hachage du mot de passe saisi dans le formulaire
|
||||
$oldpassword = sha1($_POST['oldpassword']);
|
||||
$oldpassword = crypt($oldpassword, $oldpassword);
|
||||
|
||||
//Vérification
|
||||
if($oldpassword != $test['password'])
|
||||
{
|
||||
echo "<p><font color='#FF0000'><p>Erreur : l'ancien mot de passe saisi est invalide. </font></p> \n";
|
||||
}
|
||||
else
|
||||
{
|
||||
//Maintenant que tous les tests ont étés passés avec succès, on peut hacher et modifier le mot de passe dans al base de donnéesss
|
||||
$motdepasse = sha1($_POST['newpassword']);
|
||||
$motdepasse = crypt($motdepasse, $motdepasse);
|
||||
|
||||
|
||||
//Enregistrement de la modification dans la base de donnée
|
||||
$sql = "UPDATE utilisateurs SET password = ? WHERE ID = ?";
|
||||
$modif = $bdd->prepare($sql);
|
||||
$modif->execute(array($motdepasse, $_SESSION['ID']));
|
||||
|
||||
//Affichage d'un message de succès
|
||||
echo "<p>".code_inc_img(path_img_asset('succes.png'), "Succè")."Le mot de passe a été modifié avec succès.</p>";
|
||||
|
||||
//Vérification de l'autorisation d'envoi de mails
|
||||
if($active_envoi_mail == "oui")
|
||||
{
|
||||
//Envoi d'un message au demandé
|
||||
$send_mail = true;
|
||||
$sujet = "Modification de votre mot de passe";
|
||||
$description_rapide = "Vous avez changé votre mot de passe.";
|
||||
$nom_destinataire = $afficher['prenom']." ".$afficher['nom'];
|
||||
$adresse_mail_destinataire = $afficher['mail'];
|
||||
|
||||
//Rechargement des informations
|
||||
$afficher = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
|
||||
$texte_message = "
|
||||
<h3 class='titre'>Modification de votre mot de passe</h3>
|
||||
<p>Ce message vous a été adressé automatiquement afin de vous informer que vous (ou quelqu'un se passant pour vous) avez modifié votre mot de passe avec succès depuis la page de paramètres.
|
||||
Nous vous recommandons de modifier votre mot de passe régulièrement afin d'éviter que votre mot de passe soit volé et si c'est le cas, de le modifier immédiatement.</p>
|
||||
".$info_mail_securite."
|
||||
<p><strong>Important : Si vous n'avez pas changé votre mot de passe, changez-le et contactez-nous. Il se peut que quelqu'un ait piraté votre compte et récupéré votre mot de passe.</strong></p>
|
||||
<p><a href='".$urlsite."'>Connectez-vous</a> pour accéder à toute les paramètres de Comunic.</a></p>
|
||||
";
|
||||
|
||||
//Envoi du message
|
||||
include('inc/envoi_mail.php');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=password" method='post'>
|
||||
<table>
|
||||
<tr><td>Ancien mot de passe</td><td><input type='password' name='oldpassword' /></td></tr>
|
||||
<tr><td>Nouveau mot de passe</td><td><input type='password' name='newpassword' /></td></tr>
|
||||
<tr><td>Confirmer le nouveau mot de passe</td><td><input type='password' name='confirmnewpassword' /></td></tr>
|
||||
<tr><td>Confirmer la modification</td><td><input type='submit' value='Modifier le mot de passe' /></td></tr>
|
||||
</table>
|
||||
</form>
|
||||
<?php
|
64
inc/pages/settings/piwik.inc.php
Executable file
64
inc/pages/settings/piwik.inc.php
Executable file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
/**
|
||||
* Change Piwik settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//On vérifie si une demande de modification a été envoyée
|
||||
if(isset($_POST['send']))
|
||||
{
|
||||
//On vérifie quel a été le choix de l'utilisateur
|
||||
$allow_piwik = (isset($_POST['allow_piwik']) ? 1 : 0);
|
||||
|
||||
//On met à jour la base de données
|
||||
update_sql("utilisateurs", "allow_piwik = ?", "ID = ?", $bdd, array($allow_piwik, $_SESSION['ID']));
|
||||
|
||||
//On applique le nouveau choix
|
||||
//Si Piwik est interdit, on l'applique dès maintenant
|
||||
if($allow_piwik == 0)
|
||||
$_SESSION['block_piwik'] = true;
|
||||
//Sinon, on s'assure que son autorisation est bien appliquée.
|
||||
elseif(isset($_SESSION['block_piwik']))
|
||||
unset($_SESSION['block_piwik']);
|
||||
|
||||
//On actualise les informations de l'utilisateurs
|
||||
$afficher = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
}
|
||||
?><style type="text/css">
|
||||
.piwik_manager {
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
.form_piwik_manager {
|
||||
text-align: center;
|
||||
}
|
||||
</style>
|
||||
<div class="piwik_manager">
|
||||
<h3>Gestion de Piwik</h3>
|
||||
<p>Piwik est un outils d'analyse d'audience développé pour les sites web.</p>
|
||||
<p>Piwik est le système d'analyse d'audience de site web le plus respectueux de la vie privée du marché : les informations sont systématiquements anonymisées avant d'être enregistrées, de plus si vous activer activer "Do No Track" sur votre navigateur, celui-ci n'envoi pas de données vers le serveur. Sachez également que Piwik a fait l'objet d'une dérrogation de la part de la CNIL, les webmasters optant pour ce dernier n'ont pas à afficher de bannières sur leur site informant leurs utilisateurs que le site recueille des informations, et ce à deux conditions :</p>
|
||||
<ol>
|
||||
<li>Que les adresses IP des utilisateurs soient anonymisées avant d'être envoyées au serveur.</li>
|
||||
<li>Que les sites web affichent une page telle que celle-ci pour informer les utilisateurs et leur permettre de désactiver Piwik sur leur site.</li>
|
||||
</ol>
|
||||
<p>Nous avons besoin des informations envoyées par Piwik afin de savoir notamment quels sont les navigateurs les plus utilisés par nos utilisateurs afin de faire évoluer Comunic dans le but de le rendre plus performant avec ces derniers. Piwik nous permet également de déterminer l'audience de Comunic par de simples graphiques affichant des valeurs approchées de l'évolution des visites du site.<br />Cependant nous mettons un point d'honneur, en accord avec les directives de la CNIL, de vous permettre de désactiver Piwik. Cette désactivation entre en vigueur dès que vous vous connectez à votre compte Comunic.</p>
|
||||
<p>N'hésitez pas à <a href="contact.php">nous contacter</a> pour plus d'informations</p>
|
||||
|
||||
<form class="form_piwik_manager" action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>" method="post">
|
||||
<div class="input-control switch">
|
||||
<label>
|
||||
<input type="checkbox" name="allow_piwik" <?php echo ($afficher['allow_piwik'] == 1 ? "checked" : ""); ?> />
|
||||
<span class="check"></span>
|
||||
Autoriser Piwik <i>(Activé par défaut)</i>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<!-- Valider -->
|
||||
<input type="hidden" name="send" value="1" />
|
||||
<input type="submit" value="Enregistrer" />
|
||||
</form>
|
||||
</div>
|
40
inc/pages/settings/repertoire.inc.php
Normal file
40
inc/pages/settings/repertoire.inc.php
Normal file
@ -0,0 +1,40 @@
|
||||
<?php
|
||||
/**
|
||||
* Change personnal URL settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//Vérification de l'existence d'une demande de modification
|
||||
if(isset($_POST['choix_url']))
|
||||
{
|
||||
if(verifie_validite_sous_repertoire($_POST['choix_url'], $bdd))
|
||||
{
|
||||
//Mise à jour de la BDD
|
||||
$sql = "UPDATE utilisateurs SET sous_repertoire = ? WHERE ID = ?";
|
||||
$requete = $bdd->prepare($sql);
|
||||
$requete->execute(array($_POST['choix_url'], $_SESSION['ID']));
|
||||
|
||||
//Message de succès
|
||||
?><script>affiche_notification_succes('Le nouveau sous-répertoire virtuel a été enregistré et entre en vigueur dès maintenant.', '', 7); </script><?php
|
||||
|
||||
//Rechargement des informations
|
||||
$afficher = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
}
|
||||
else
|
||||
echo "<script>affiche_notification_erreur('Impossible de continuer avec le sous-répertoire: soit il est déja utilisé, soit il est incorrect.', 'Erreur', 10); </script>";
|
||||
}
|
||||
|
||||
//Message
|
||||
?><h3>Choix du répertoire</h3><?php
|
||||
|
||||
//Explication
|
||||
?><p>Sur cette page, vous pouvez choisir un sous-répertoire virtuel qui, lorsqu'il est ouvert, redirigera vers votre page.</p><?php
|
||||
|
||||
//Formulaire
|
||||
?><form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>" method="post">
|
||||
Choix de l'URL : <?php echo $urlsite; ?><input type="text" name="choix_url" value="<?php echo $afficher['sous_repertoire']; ?>" /> <input type="submit" value="Valider" />
|
||||
</form><?php
|
62
inc/pages/settings/rss.inc.php
Normal file
62
inc/pages/settings/rss.inc.php
Normal file
@ -0,0 +1,62 @@
|
||||
<?php
|
||||
/**
|
||||
* Change RSS settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//On vérifie la demande d'une génération de clé
|
||||
if(isset($_GET['generate']))
|
||||
{
|
||||
//Génération de la clé
|
||||
if(isset($_GET['delete']))
|
||||
$cle = "";
|
||||
else
|
||||
$cle = sha1(time().$_SESSION['ID'].$afficher['last_activity']);
|
||||
|
||||
//Enregistrement de la clé
|
||||
$sql = "UPDATE utilisateurs SET flux_rss = ? WHERE ID = ?";
|
||||
$modif = $bdd->prepare($sql);
|
||||
if($modif->execute(array($cle, $_SESSION['ID'])))
|
||||
{
|
||||
//Message de succès
|
||||
?><script type="text/javascript">affiche_notification_succes("La clé du flux RSS a été modifiée avec succès.");</script><?php
|
||||
|
||||
//Rechargement des informations
|
||||
$afficher = cherchenomprenom($_SESSION['ID'], $bdd);
|
||||
}
|
||||
else
|
||||
{
|
||||
?><script type="text/javascript">affiche_notification_succes("La modification de la clé du flux RSS a échoué. Veuillez réessayer.");</script><?php
|
||||
}
|
||||
}
|
||||
|
||||
?><h3>Flux RSS</h3>
|
||||
<p>Vous permet de télécharger les notifications de Comunic sur votre logiciel de gestion de flux.</p>
|
||||
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>&generate" method="post">
|
||||
<input type="submit" value="<?php echo ($afficher['flux_rss'] == "" ? "Générer" : "Regénérer"); ?> une clé de flux RSS" />
|
||||
</form>
|
||||
|
||||
<form action="<?php echo $_SERVER['PHP_SELF']; ?>?c=<?php echo $_GET['c']; ?>&generate&delete" method="post">
|
||||
<input type="submit" class="danger" value="Supprimer la clé de flux RSS" />
|
||||
</form>
|
||||
|
||||
<p><u>Note :</u> Lorsque vous regénérez une nouvelle clé, l'ancienne clé est écrasé et n'est plus utilisable.</p>
|
||||
|
||||
<p>Adresse actuelle du flux :</p>
|
||||
|
||||
<?php
|
||||
if($afficher['flux_rss'] == "")
|
||||
//Il n'y a pas de clé
|
||||
echo "Aucune clé pour le moment.<br />";
|
||||
else
|
||||
{
|
||||
//Génération de l'adresse
|
||||
$adresse_flux = $urlsite."rss.php?id=".$_SESSION['ID']."&key=".$afficher['flux_rss'];
|
||||
|
||||
echo "<p>Cette adresse vous permet d'accéder au flux : <i><a href='".$adresse_flux."' target='_blank'>".$adresse_flux."</a></p>";
|
||||
}
|
66
inc/pages/settings/settingsList.php
Normal file
66
inc/pages/settings/settingsList.php
Normal file
@ -0,0 +1,66 @@
|
||||
<?php
|
||||
/**
|
||||
* Listing of settings pages
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//Settings list
|
||||
$settingsList = array(
|
||||
//Left side menu
|
||||
"settingsMenu" => array("file" => "settingsMenu.inc.php"),
|
||||
|
||||
//General settings
|
||||
"general" => array("file" => "general.inc.php"),
|
||||
|
||||
//RSS personnal settings
|
||||
"rss" => array("file" => "rss.inc.php"),
|
||||
|
||||
//People groups settings
|
||||
"groupe_personnes" => array("file" => "groupePersonnes.inc.php"),
|
||||
|
||||
//Multi-auth settings
|
||||
"multi_login" => array("file" => "multiLogin.inc.php"),
|
||||
|
||||
//Piwik configuration settings
|
||||
"piwik" => array("file" => "piwik.inc.php"),
|
||||
|
||||
//Multi-pages settings (not released yet)
|
||||
"pages" => array("file" => "pages.inc.php"),
|
||||
|
||||
//Appearance settings
|
||||
"apparence" => array("file" => "appearance.inc.php"),
|
||||
|
||||
//Notifications settings
|
||||
"notifications" => array("file" => "notifications.inc.php"),
|
||||
|
||||
//Personnal URL settings
|
||||
"repertoire" => array("file" => "repertoire.inc.php"),
|
||||
|
||||
//Password settings
|
||||
"password" => array("file" => "password.inc.php"),
|
||||
|
||||
//Avatar settings
|
||||
"avatar" => array("file" => "avatar.inc.php"),
|
||||
|
||||
//Background image settings
|
||||
"imgfond" => array("file" => "backgroundImg.inc.php"),
|
||||
|
||||
//Chat settings
|
||||
"chat" => array("file" => "chat.inc.php"),
|
||||
|
||||
//Clean account settings
|
||||
"clean_account" => array("file" => "cleanAccount.inc.php"),
|
||||
|
||||
//Change avatar visibility settings
|
||||
"visibilite_avatar" => array("file" => "avatarVisibility.inc.php"),
|
||||
|
||||
//Export personnal datas
|
||||
"exportinfo" => array("file" => "exportData.inc.php"),
|
||||
|
||||
//No page found whith the current request
|
||||
"error" => array("file" => "error.inc.php"),
|
||||
);
|
34
inc/pages/settings/settingsMenu.inc.php
Normal file
34
inc/pages/settings/settingsMenu.inc.php
Normal file
@ -0,0 +1,34 @@
|
||||
<?php
|
||||
/**
|
||||
* Change menu settings
|
||||
*
|
||||
* @author Pierre HUBERT
|
||||
*/
|
||||
|
||||
if(!isset($_SESSION))
|
||||
exit("Invalid call !");
|
||||
|
||||
//Menu Bar
|
||||
?><nav class="sidebar <?php echo (($afficher['color_menu'] == "blue") || ($afficher['old_menu'] == 1) ? "light" : $afficher['color_menu']); ?>">
|
||||
<ul>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>"><i class="icon-home"></i> <?php echo $lang[56]; ?></a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=groupe_personnes">Groupes de personnes</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=multi_login"><i class="icon-key"></i> Multi-authentification</a></li>
|
||||
<!--<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=pages">Vos pages</a></li>-->
|
||||
|
||||
<li class="title">Personnalisation</li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=avatar"><i class="icon-user"></i> Avatar</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=imgfond"><i class="icon-pictures"></i> Image de fond</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=apparence"><i class="icon-tools"></i> Apparence</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=notifications"><i class="icon-comments-4"></i> Notifications</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=rss"><i class="icon-feed"></i> Flux RSS</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=repertoire"><i class="icon-globe"></i> Choix de l'URL</a></li>
|
||||
|
||||
<li class="title">Vie privée</li>
|
||||
<?php if($activer_publique_chat == "oui") { ?><li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=chat"><i class="icon-comments"></i> Chat publique</a></li><?php } ?>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=clean_account"><i class="icon-cycle"></i> Nettoyage de votre compte</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=visibilite_avatar"><i class="icon-menu"></i> Visibilité de votre avatar</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=piwik"><i class="icon-stats"></i> Gestion de Piwik</a></li>
|
||||
<li><a href="<?php echo $_SERVER['PHP_SELF']; ?>?c=exportinfo"><i class="icon-share"></i> Export des informations personnelles</a></li>
|
||||
</ul>
|
||||
</nav>
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user