mirror of
https://github.com/pierre42100/comunic
synced 2024-09-29 03:22:49 +00:00
129 lines
3.6 KiB
JavaScript
129 lines
3.6 KiB
JavaScript
|
// Script de gestion du panneau du chat privé
|
||
|
// (c) Service Pierre 2015
|
||
|
|
||
|
//Fonction permettant d'afficher ou de masquer le chat privé
|
||
|
function show_hide_panneau_private_chat(show)
|
||
|
{
|
||
|
//On masque le panneau
|
||
|
if(show == 0)
|
||
|
{
|
||
|
show_hide_id("private_chat_contener", "hidden");
|
||
|
show_hide_id("private_chat_open_button", "visible");
|
||
|
|
||
|
//On vide son contenu
|
||
|
document.getElementById('conversations_private_chat').innerHTML = "";
|
||
|
}
|
||
|
//On affiche le panneau
|
||
|
else
|
||
|
{
|
||
|
show_hide_id("private_chat_contener", "visible");
|
||
|
show_hide_id("private_chat_open_button", "hidden");
|
||
|
}
|
||
|
|
||
|
//Requête ajax pour enregistrer le choix
|
||
|
ajax_rapide("action.php?actionid=17&show=" + show);
|
||
|
}
|
||
|
|
||
|
//Fonction permettant de changer la taille des fenêtres de chat
|
||
|
function up_down_panneau_private_chat(type)
|
||
|
{
|
||
|
//On récupère la valeur actuelle de la hauteur
|
||
|
var hauteur = parseInt(document.getElementById("private_chat_contener").style.height);
|
||
|
|
||
|
//On la modifie
|
||
|
if(type == "up")
|
||
|
hauteur = hauteur + 50;
|
||
|
else
|
||
|
hauteur = hauteur - 50;
|
||
|
|
||
|
//Adaptation de la hauteur
|
||
|
if(hauteur < 20)
|
||
|
{
|
||
|
hauteur = 20
|
||
|
}
|
||
|
|
||
|
|
||
|
//Adaptation de la hauteur
|
||
|
if(hauteur > 220)
|
||
|
{
|
||
|
hauteur = 220
|
||
|
}
|
||
|
|
||
|
//Vérification de la hauteur
|
||
|
if(hauteur > 20 && hauteur < 220)
|
||
|
{
|
||
|
//Message en cas de hauteur de 100px
|
||
|
if(hauteur == 20)
|
||
|
{
|
||
|
//Message
|
||
|
affiche_notification("Vous avez atteint la hauteur minimale.", "Note");
|
||
|
}
|
||
|
if(hauteur == 220)
|
||
|
{
|
||
|
//Message
|
||
|
affiche_notification("Vous avez atteint la hauteur maximale.", "Note");
|
||
|
}
|
||
|
|
||
|
//Application de la nouvelle hauteur
|
||
|
document.getElementById("private_chat_contener").style.height = hauteur + "px";
|
||
|
document.getElementById("conversations_private_chat").style.height = hauteur + "px";
|
||
|
|
||
|
//Envoi d'une requête ajax pour enregistrer la nouvelle hauteur
|
||
|
ajax_rapide("action.php?actionid=18&size=" + hauteur);
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
//Message d'erreur
|
||
|
affiche_notification_erreur("La hauteur choisie est trop faible ou trop élevée.", "Erreur");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
//Fonction permettan d'ouvrir une conversation dans le chat privé
|
||
|
function affiche_chat_prive(id)
|
||
|
{
|
||
|
//Ouverture de la conversation par ajax
|
||
|
ajax_rapide("action.php?actionid=19&id=" + id);
|
||
|
|
||
|
//Affichage du panneau de chat
|
||
|
show_hide_panneau_private_chat(1);
|
||
|
|
||
|
//Fenêtre de succès
|
||
|
affiche_notification_succes("La conversation a été ajoutée.", "", 2);
|
||
|
|
||
|
//Rechargement des fenêtres du chat privé
|
||
|
refresh_fenetres_chat_decale();
|
||
|
}
|
||
|
|
||
|
//Fonction d'actualisation des fenêtres du chat
|
||
|
function refresh_fenetres_chat()
|
||
|
{
|
||
|
var xhr = new XMLHttpRequest();
|
||
|
xhr.open('GET', "action.php?actionid=20");
|
||
|
xhr.onreadystatechange = function() { // On gère ici une requête asynchrone
|
||
|
if (xhr.readyState == 4 && xhr.status == 200) { // Si le fichier est chargé sans erreur
|
||
|
document.getElementById('conversations_private_chat').innerHTML = xhr.responseText;
|
||
|
}
|
||
|
};
|
||
|
xhr.send(null);
|
||
|
}
|
||
|
|
||
|
//Fonction de décalage de la fonction d'actualisation des fenêtres du chat privé
|
||
|
function refresh_fenetres_chat_decale()
|
||
|
{
|
||
|
//Actualisation des fenêtres du chat (en décalé)
|
||
|
refresh_fenetres_chat();
|
||
|
}
|
||
|
|
||
|
//Fonction permettant de fermer une conversation
|
||
|
function close_conversation(id)
|
||
|
{
|
||
|
//Fermeture de la conversation par ajax
|
||
|
ajax_rapide("action.php?actionid=19&remove=1&id=" + id);
|
||
|
|
||
|
//Actualisation des fenêtres du chat
|
||
|
refresh_fenetres_chat_decale();
|
||
|
|
||
|
//Fenêtre de succès
|
||
|
affiche_notification_succes("La conversation a été fermée.", "", 2);
|
||
|
}
|