aboutsummaryrefslogtreecommitdiff
path: root/fiche.py
blob: e65a7989c54b486b3587a6726dfea1c586efd08d (plain)
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
#!/usr/bin/python
# -*- coding: utf-8 -*-

from mod_python import Session
from fonctions import redirectionSiNonConnecte, lien, codeHTML, connexionBD

def index(req):
    req.content_type="text/html"

    sess = Session.Session(req) #recup session
    redirectionSiNonConnecte(req,sess) #redirige si la session est nouvelle
    id_util=sess["id_util"] #recup l'id_util
    id_contact=req.form["id_contact"] #recup l'id_contact

#debut sql
    conn = connexionBD()
    cur = conn.cursor()
    sql = "select * from contact where id_contact={} and id_util={};".format(id_contact, id_util)
    cur.execute(sql)
    conn.commit()
    data = cur.fetchall()
    conn.close()
#fin sql

    if not data:
	req.write(codeHTML("Erreur !", """
<p>Ce contact ne vous appartient pas.</p>
""" + lien('menu.py',"Retour au menu")))
#si le resultat de la req sql est vide
#alors le contact n'appartient pas à l'utilisateur connecté

    else:
#début prise info dans les var
	data = data[0]
	nom=str(data[1])
	email=str(data[2])
	tel=str(data[3])
	addr=str(data[4])
	lat=str(data[5])
	lon=str(data[6])
#fin prise infos
	content = "" #ou tout le surplus va être ajouté (en plus du nom)

	if email != "":
		content += """
        <tr>
                <td>Email</td>
                <td>""" + lien("mailto:" + email , email) + """</td>
        </tr>

"""
#check si l'email est donné

	if tel != "":
		content += """
        <tr>
                <td>Telephone</td>
                <td>""" + tel + """</td>
        </tr>

"""
#check si le num est donné

	if addr != "":
		content += """
	<tr>
		<td>Adresse</td>
		<td>""" + addr + """</td>
	</tr>
"""
#check si l'addresse est donné


#debut affiche map
        if addr == "": #si pas d'adresse
                maps="<b>Adresse non précisé</b>"
	elif lat=="None" and lon=="None": #si le geocodage ne renvoit rien
		maps="<b>Emplacement indisponible</b>"
	else: #créé la map avec lat et lon de geocodage
		maps="""
<link rel="stylesheet" href="leaflet.css"/>
<script src="leaflet.js"></script> 
<div id="carte" style="width: 600px; height: 400px"></div>
<script>
	var map = L.map("carte");
	map.setView({lat: """ + lat + """, lon: """ + lon + """}, 10);
	url="https://{s}.tile.openstreetmap.org" + "/{z}/{x}/{y}.png";
	var layer = L.tileLayer(url);
	layer.addTo(map);
	var m = L.marker({lat: """ + lat + """, lon: """ + lon + """});
	m.addTo(map);
</script>
"""
#fin affichage maps

#la suite écrit la page avec les différentes variables données
	req.write(codeHTML("Fiche d'un contact","""
<b>Fiche d'un contact</b><br/>
<table>
        <tr>
                <td>Nom</td>
                <td>""" + nom + """</td>
        </tr>
""" + content + """
</table>
""" + maps + """
<br/>
""" + lien ("supression.py?id_contact=" + id_contact ,"Supression du contact") + """
<br/>
""" + lien("menu.py","Retour au menu")))