1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
| //this function can remove a array element.
Array.remove = function(array, from, to) {
var rest = array.slice((to || from) + 1 || array.length);
array.length = from < 0 ? array.length + from : from;
return array.push.apply(array, rest);
};
//this variable represents the total number of popups can be displayed according to the viewport width
var total_popups = 0;
//arrays of popups ids
var popups = [];
//this is used to close a popup
function close_popup(id)
{
for(var iii = 0; iii < popups.length; iii++)
{
if(id == popups[iii])
{
Array.remove(popups, iii);
document.getElementById(id).style.display = "none";
calculate_popups();
return;
}
}
}
//displays the popups. Displays based on the maximum number of popups that can be displayed on the current viewport width
function display_popups()
{
var right = 10;
var iii = 0;
for(iii; iii < total_popups; iii++)
{
if(popups[iii] != undefined)
{
var element = document.getElementById(popups[iii]);
element.style.right = right + "px";
right = right + 230;
element.style.display = "block";
}
}
for(var jjj = iii; jjj < popups.length; jjj++)
{
var element = document.getElementById(popups[jjj]);
element.style.display = "none";
}
}
//creates markup for a new popup. Adds the id to popups array.
function register_popup(id, name)
{
for(var iii = 0; iii < popups.length; iii++)
{
//already registered. Bring it to front.
if(id == popups[iii])
{
Array.remove(popups, iii);
popups.unshift(id);
calculate_popups();
return;
}
}
var zone_sms = $("#body_sms");
zone_sms.on("keydown",function(e){
if (e.keyCode == 13) {
if (!e.preventDefault()) {
e.target;
}
// tu mets ton code a executé a l'appui de l'ENTRER ici. pour moi j'envoi le message
// en premier lieu je recupère dans une variable text_sms le contenu de mon textarea et je vérifie si c'est vide ou pas
var text_sms = $(this).val(),all_key = text_sms.split(" "),isEmpty = true;
$(this).val("");
for (var i = all_key.length - 1; i >= 0; i--) {
if (all_key[i] != "") {
isEmpty = false;
}
}
if (!isEmpty) {
/*
- si ce n'est pas vide on continue
- on envoi le texte a un notre fichier php pour etre sauvegarder dans une data base
*/
$.ajax({
url : "serveur.php",
type: "POST",
data: {text_box : text_sms},
dataType: "JSON",
success: function(resultat){
if (resultat.end) {
// si le message est envoi au fichier php on ajoute le texte a notre displayer_all_box pour l'afficher a l'écran
$("#displayer_all_sms").append("<label><span class='every_box'>"+text_sms+"</span></label>");
}
else{
alert("message non envoyé");
}
}
});
}
else{
alert("Zone Vide");
}
}
})
var element = '<div class="popup-box chat-popup" id="'+ id +'">';
element = element + '<div class="popup-head">';
element = element + '<div class="popup-head-left">'+ name +'</div>';
element = element + '<div class="popup-head-right"><a href="javascript:close_popup(\''+ id +'\');">✕</a></div>';
element = element + '<div style="clear: both"></div></div><div class="popup-messages">';
element = element + '<iframe width="220px" height="245px" src="es.php?essai='+ id +'" frameborder="0" allowfullscreen></iframe></div>';
element = element + '<div class="msg-wgt-footer">';
element = element + '<textarea id="body_sms" name="body_sms" placeholder="Type your message. Press shift + Enter to send"></textarea>';
element = element + '</div>';
document.getElementsByTagName("body")[0].innerHTML = document.getElementsByTagName("body")[0].innerHTML + element;
popups.unshift(id);
calculate_popups();
}
//calculate the total number of popups suitable and then populate the toatal_popups variable.
function calculate_popups()
{
var width = window.innerWidth;
if(width < 540)
{
total_popups = 0;
}
else
{
width = width - 200;
//320 is width of a single popup box
total_popups = parseInt(width/320);
}
display_popups();
}
//recalculate when window is loaded and also when window is resized.
window.addEventListener("resize", calculate_popups);
window.addEventListener("load", calculate_popups); |
Partager