menu principal
This commit is contained in:
@@ -1,11 +1,12 @@
|
|||||||
# -*- coding: utf8 -*-
|
# -*- coding: utf8 -*-
|
||||||
from pyramid_layout.layout import layout_config
|
from pyramid_layout.layout import layout_config
|
||||||
|
from pyramid.security import authenticated_userid
|
||||||
|
from .security import groupfinder
|
||||||
from views.default import (
|
from views.default import (
|
||||||
to_euro,
|
to_euro,
|
||||||
to_percent,
|
to_percent,
|
||||||
to_decimal,
|
to_decimal,
|
||||||
)
|
)
|
||||||
from pyramid.security import authenticated_userid
|
|
||||||
|
|
||||||
@layout_config(template='templates/layouts/global_layout.pt')
|
@layout_config(template='templates/layouts/global_layout.pt')
|
||||||
class GlobalLayout(object):
|
class GlobalLayout(object):
|
||||||
|
|||||||
@@ -61,16 +61,13 @@ def update_membre(request, email, new_values):
|
|||||||
for param in new_values.keys():
|
for param in new_values.keys():
|
||||||
if param == 'nom':
|
if param == 'nom':
|
||||||
new_values['nom'] = new_values['nom'].upper()
|
new_values['nom'] = new_values['nom'].upper()
|
||||||
if param == 'access':
|
|
||||||
' ne prend que le 1er caractère'
|
|
||||||
new_values['access'] = new_values['access'][0]
|
|
||||||
|
|
||||||
if s:
|
if s:
|
||||||
s += ",%s=:%s" % (param, param)
|
s += ",%s=:%s" % (param, param)
|
||||||
else:
|
else:
|
||||||
s = "%s=:%s" % (param, param)
|
s = "%s=:%s" % (param, param)
|
||||||
|
|
||||||
if email == '':
|
if email == 'new':
|
||||||
query = "INSERT INTO members SET %s" % s
|
query = "INSERT INTO members SET %s" % s
|
||||||
else:
|
else:
|
||||||
new_values['email'] = email
|
new_values['email'] = email
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 7.2 KiB |
@@ -3,26 +3,6 @@
|
|||||||
|
|
||||||
<div class="container-fluid text-center">
|
<div class="container-fluid text-center">
|
||||||
<br />
|
<br />
|
||||||
<div class="row">
|
|
||||||
<div class="col-sm-3">
|
|
||||||
<a href="${request.application_url}/agenda">
|
|
||||||
<span class="glyphicon glyphicon-calendar logo-small"></span><br />
|
|
||||||
<h4>MON AGENDA</h4></a>
|
|
||||||
</div>
|
|
||||||
<div class="col-sm-3">
|
|
||||||
<a href="${request.application_url}/planning">
|
|
||||||
<span class="glyphicon glyphicon-calendar logo-small"></span><br />
|
|
||||||
<h4>PLANNING</h4></a>
|
|
||||||
</div>
|
|
||||||
</div> <!-- row 1 -->
|
|
||||||
<br />
|
|
||||||
<div class="row well" tal:condition="layout.isAdmin">
|
|
||||||
<div class="col-sm-3">
|
|
||||||
<a href="${request.application_url}/users_list">
|
|
||||||
<span class="glyphicon glyphicon-user logo-small"></span><br />
|
|
||||||
<h4>UTILISATEURS</h4></a>
|
|
||||||
</div>
|
|
||||||
</div> <!-- row 2 -->
|
|
||||||
<br />
|
<br />
|
||||||
<br />
|
<br />
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,71 +1,67 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml"
|
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||||
xmlns:metal="http://xml.zope.org/namespaces/metal"
|
xmlns:metal="http://xml.zope.org/namespaces/metal"
|
||||||
xmlns:tal="http://xml.zope.org/namespaces/tal"
|
xmlns:tal="http://xml.zope.org/namespaces/tal"
|
||||||
lang="fr">
|
lang="fr">
|
||||||
<head>
|
<head>
|
||||||
<title>${page_title}</title>
|
<title>${page_title}</title>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="initial-scale=1.0, user-scalable=yes" />
|
<meta name="viewport" content="initial-scale=1.0, user-scalable=yes" />
|
||||||
|
|
||||||
<!-- Bootstrap core + Plug-ins CSS -->
|
<!-- Bootstrap core + Plug-ins CSS -->
|
||||||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
|
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
|
||||||
<link href="//cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/fullcalendar.min.css" rel="stylesheet">
|
<link href="//cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/fullcalendar.min.css" rel="stylesheet">
|
||||||
<link href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.min.css" rel="stylesheet">
|
<link href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.min.css" rel="stylesheet">
|
||||||
<link href="${request.static_url('caotek_mesavoirs:static/dist/datatable/dataTables.bootstrap.css')}" rel="stylesheet" media="all">
|
<link href="${request.static_url('caotek_mesavoirs:static/dist/datatable/dataTables.bootstrap.css')}" rel="stylesheet" media="all">
|
||||||
<link href="${request.static_url('caotek_mesavoirs:static/dist/formvalidation/css/formValidation.min.css')}" rel="stylesheet">
|
<link href="${request.static_url('caotek_mesavoirs:static/dist/formvalidation/css/formValidation.min.css')}" rel="stylesheet">
|
||||||
<!-- Custom CSS -->
|
<!-- Custom CSS -->
|
||||||
<link href="${request.static_url('caotek_mesavoirs:static/css/style.less')}" type="text/css" rel="stylesheet/less">
|
<link href="${request.static_url('caotek_mesavoirs:static/css/style.less')}" type="text/css" rel="stylesheet/less">
|
||||||
|
|
||||||
<!-- Bootstrap + jQuery JavaScript plugins) -->
|
<!-- Bootstrap + jQuery JavaScript plugins) -->
|
||||||
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
|
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
|
||||||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
|
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
|
||||||
|
|
||||||
<!-- Bootstrap Fullcalendar plugin -->
|
<!-- Bootstrap Fullcalendar plugin -->
|
||||||
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
|
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
|
||||||
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/locale/fr.js"></script>
|
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/locale/fr.js"></script>
|
||||||
<script src="//cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/fullcalendar.min.js"></script>
|
<script src="//cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/fullcalendar.min.js"></script>
|
||||||
<script src="//cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/locale/fr.js"></script>
|
<script src="//cdnjs.cloudflare.com/ajax/libs/fullcalendar/3.1.0/locale/fr.js"></script>
|
||||||
<!-- Bootstrap Datepicker plugin -->
|
<!-- Bootstrap Datepicker plugin -->
|
||||||
<script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js"></script>
|
<script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js"></script>
|
||||||
<!-- Datatable -->
|
<!-- Datatable -->
|
||||||
<script src="${request.static_url('caotek_mesavoirs:static/dist/datatable/jquery.dataTables.js')}"></script>
|
<script src="${request.static_url('caotek_mesavoirs:static/dist/datatable/jquery.dataTables.js')}"></script>
|
||||||
<script src="${request.static_url('caotek_mesavoirs:static/dist/datatable/dataTables.bootstrap.js')}"></script>
|
<script src="${request.static_url('caotek_mesavoirs:static/dist/datatable/dataTables.bootstrap.js')}"></script>
|
||||||
<script src="${request.static_url('caotek_mesavoirs:static/dist/datatable/datetime-moment.js')}"></script>
|
<script src="${request.static_url('caotek_mesavoirs:static/dist/datatable/datetime-moment.js')}"></script>
|
||||||
<!-- FormValidation plugin -->
|
<!-- FormValidation plugin -->
|
||||||
<script src="${request.static_url('caotek_mesavoirs:static/dist/formvalidation/js/formValidation.min.js')}"></script>
|
<script src="${request.static_url('caotek_mesavoirs:static/dist/formvalidation/js/formValidation.min.js')}"></script>
|
||||||
<script src="${request.static_url('caotek_mesavoirs:static/dist/formvalidation/js/framework/bootstrap.min.js')}"></script>
|
<script src="${request.static_url('caotek_mesavoirs:static/dist/formvalidation/js/framework/bootstrap.min.js')}"></script>
|
||||||
<script src="${request.static_url('caotek_mesavoirs:static/dist/formvalidation/js/language/fr_FR.js')}" type="text/javascript"></script>
|
<script src="${request.static_url('caotek_mesavoirs:static/dist/formvalidation/js/language/fr_FR.js')}" type="text/javascript"></script>
|
||||||
|
|
||||||
<!-- Less -->
|
<!-- Less -->
|
||||||
<script src="${request.static_url('caotek_mesavoirs:static/dist/less-1.5.0.min.js')}" type="text/javascript"></script>
|
<script src="${request.static_url('caotek_mesavoirs:static/dist/less-1.5.0.min.js')}" type="text/javascript"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<!-- HEADER -->
|
<!-- HEADER -->
|
||||||
<nav id="mainnav" class="navbar navbar-default navbar-fixed-top">
|
<nav id="mainnav" class="navbar navbar-default navbar-fixed-top">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="navbar-header">
|
<div class="navbar-header">
|
||||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
|
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#myNavbar">
|
||||||
<span class="icon-bar"></span>
|
<span class="icon-bar"></span>
|
||||||
<span class="icon-bar"></span>
|
<span class="icon-bar"></span>
|
||||||
<span class="icon-bar"></span>
|
<span class="icon-bar"></span>
|
||||||
</button>
|
</button>
|
||||||
<a href="${request.application_url}" alt="Accueil">
|
<a href="${request.application_url}" alt="Accueil">
|
||||||
<img src="${request.static_url('caotek_mesavoirs:static/img/logo.png')}" class="logo" /></a>
|
<img src="${request.static_url('caotek_mesavoirs:static/img/logo.png')}" class="logo" /></a>
|
||||||
Entreprise DUMAS
|
MES AVOIRS
|
||||||
</div>
|
</div>
|
||||||
<div class="collapse navbar-collapse" id="myNavbar" tal:condition="not layout.isAnonymous()">
|
<div class="collapse navbar-collapse" id="myNavbar" tal:condition="not layout.isAnonymous()">
|
||||||
<ul class="nav navbar-nav navbar-right">
|
<ul class="nav navbar-nav navbar-right">
|
||||||
<li>
|
<li><a href="${request.application_url}"><span class="glyphicon glyphicon-home"></span> Accueil</a></li>
|
||||||
<a href="${request.application_url}"><span class="glyphicon glyphicon-home"></span> Accueil</a></li>
|
<li><a href="${request.application_url}/actifs"><span class="glyphicon glyphicon-list-alt"></span> Actifs</a></li>
|
||||||
<!--
|
${panel('dropdown_menu_panel')}
|
||||||
<li tal:condition="python: layout.isAdmin()">
|
</ul>
|
||||||
<a href="${request.application_url}/gestionnaire"><span class="glyphicon glyphicon-eye-open"></span> Gestionnaire</a></li>
|
</div>
|
||||||
-->
|
|
||||||
${panel('dropdown_menu_panel')}
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
@@ -74,32 +70,32 @@
|
|||||||
<br />
|
<br />
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1>${page_title}</h1>
|
<h1>${page_title}</h1>
|
||||||
<br />
|
<br />
|
||||||
<div id="messages" tal:attributes="class request.is_xhr and 'ajax-replace' or None">
|
<div id="messages" tal:attributes="class request.is_xhr and 'ajax-replace' or None">
|
||||||
<div tal:repeat="queue ('', 'info', 'success', 'warning', 'danger')"
|
<div tal:repeat="queue ('', 'info', 'success', 'warning', 'danger')"
|
||||||
tal:omit-tag="">
|
tal:omit-tag="">
|
||||||
<div class="alert alert-${queue or 'info'}"
|
<div class="alert alert-${queue or 'info'}"
|
||||||
tal:define="messages request.session.pop_flash(queue)"
|
tal:define="messages request.session.pop_flash(queue)"
|
||||||
tal:condition="messages"
|
tal:condition="messages"
|
||||||
tal:repeat="message messages">
|
tal:repeat="message messages">
|
||||||
<button type="button" class="close" data-dismiss="alert">×</button>
|
<button type="button" class="close" data-dismiss="alert">×</button>
|
||||||
${structure:message}
|
${structure:message}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div metal:define-slot="content" />
|
<div metal:define-slot="content" />
|
||||||
<br />
|
<br />
|
||||||
<br />
|
<br />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="footer">
|
<div id="footer">
|
||||||
<div class="well">
|
<div class="well">
|
||||||
<p>© 2017 - <a href="http://www.entreprise-dumas.com/" target="_blank">Entreprise Dumas</a></p>
|
<p>© 2017 - <a href="http://www.entreprise-dumas.com/" target="_blank">caotek.fr</a></p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div metal:define-slot="additional_scripts" />
|
<div metal:define-slot="additional_scripts" />
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -20,15 +20,25 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="control-label col-xs-2" for="intitule">Nom et prénom</label>
|
<label class="control-label col-xs-2" for="intitule">Nom</label>
|
||||||
<div class="col-xs-5">
|
<div class="col-xs-5">
|
||||||
<input class="form-control" type="text" id="intitule" name="nom" value="${membre.nom}"
|
<input class="form-control" type="text" id="intitule" name="nom" value="${membre.nom}"
|
||||||
placeholder="30 caractères maximum"
|
|
||||||
data-fv-notempty="true"
|
data-fv-notempty="true"
|
||||||
data-fv-notempty-message="Le nom est obligatoire"
|
data-fv-notempty-message="Le nom est obligatoire"
|
||||||
data-fv-stringlength="true"
|
data-fv-stringlength="true"
|
||||||
data-fv-stringlength-max="25"
|
data-fv-stringlength-max="45"
|
||||||
data-fv-stringlength-message="25 caractères maximum" />
|
data-fv-stringlength-message="45 caractères maximum" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="control-label col-xs-2" for="intitule">Prénom</label>
|
||||||
|
<div class="col-xs-5">
|
||||||
|
<input class="form-control" type="text" id="intitule" name="prenom" value="${membre.prenom}"
|
||||||
|
data-fv-notempty="true"
|
||||||
|
data-fv-notempty-message="Le prenom est obligatoire"
|
||||||
|
data-fv-stringlength="true"
|
||||||
|
data-fv-stringlength-max="45"
|
||||||
|
data-fv-stringlength-message="45 caractères maximum" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
@@ -44,7 +54,7 @@
|
|||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label class="control-label col-xs-2">Dernière modif.</label>
|
<label class="control-label col-xs-2">Dernière modif.</label>
|
||||||
<div class="col-xs-7">
|
<div class="col-xs-7">
|
||||||
<p class="form-control-static">${membre.modif_le.strftime('%d/%m/%Y - %H:%M')}</p>
|
<p class="form-control-static" tal:condition="membre.modif_le">${membre.modif_le.strftime('%d/%m/%Y - %H:%M')}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
|||||||
@@ -4,8 +4,8 @@
|
|||||||
<p>
|
<p>
|
||||||
<a href="${request.application_url}/" class="btn btn-default" role="button">
|
<a href="${request.application_url}/" class="btn btn-default" role="button">
|
||||||
<span class="glyphicon glyphicon-chevron-left"></span> Retour</a>
|
<span class="glyphicon glyphicon-chevron-left"></span> Retour</a>
|
||||||
<a href="${request.application_url}/user_edit/0" class="btn btn-success" role="button">
|
<a href="${request.application_url}/user_edit/new" class="btn btn-success" role="button">
|
||||||
<span class="glyphicon glyphicon-plus"></span> Nouveau utilisateur</a>
|
<span class="glyphicon glyphicon-plus"></span> Nouveau membre</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<table id="users_list" class="table table-striped table-bordered">
|
<table id="users_list" class="table table-striped table-bordered">
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
|
|
||||||
<li class="divider"></li>
|
<li class="divider"></li>
|
||||||
<li><a href="${request.application_url}/changer_mdp">Changer mon mot de passe</a></li>
|
<li><a href="${request.application_url}/changer_mdp">Changer mon mot de passe</a></li>
|
||||||
|
<li tal:condition="layout.isAdmin()"><a href="${request.application_url}/users_list">Gestion des membres</a></li>
|
||||||
|
|
||||||
<li class="divider"></li>
|
<li class="divider"></li>
|
||||||
<li><a href="${request.application_url}/logout">
|
<li><a href="${request.application_url}/logout">
|
||||||
|
|||||||
@@ -22,6 +22,9 @@ import hashlib
|
|||||||
|
|
||||||
from sqlalchemy.exc import DBAPIError
|
from sqlalchemy.exc import DBAPIError
|
||||||
from ..security import groupfinder
|
from ..security import groupfinder
|
||||||
|
from ..models.members import (
|
||||||
|
get_member_by_email,
|
||||||
|
)
|
||||||
|
|
||||||
import json
|
import json
|
||||||
|
|
||||||
@@ -50,9 +53,15 @@ def to_percent(x):
|
|||||||
|
|
||||||
@view_config(route_name='home', renderer='../templates/home.pt', permission='view')
|
@view_config(route_name='home', renderer='../templates/home.pt', permission='view')
|
||||||
def home(request):
|
def home(request):
|
||||||
|
logged_in = authenticated_userid(request)
|
||||||
|
# lire la fiche du membre
|
||||||
|
membre = get_member_by_email(request, logged_in)
|
||||||
|
if not membre:
|
||||||
|
request.session.flash(u"Utilisateur non trouvé : %s" % logged_in, 'warning')
|
||||||
|
return HTTPFound(location=request.route_url('/home'))
|
||||||
|
|
||||||
return {
|
return {
|
||||||
'page_title': 'Bienvenue',
|
'page_title': u"%s %s" % (membre.prenom, membre.nom),
|
||||||
'project': 'mondumas',
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -170,7 +170,7 @@ def users_list(request):
|
|||||||
expire_le = ''
|
expire_le = ''
|
||||||
|
|
||||||
|
|
||||||
d = (item.nom, item.email, item.acces, der_cnx_le, expire_le)
|
d = (item.nom + " " + item.prenom, item.email, item.acces, der_cnx_le, expire_le)
|
||||||
liste.append(d)
|
liste.append(d)
|
||||||
|
|
||||||
return {
|
return {
|
||||||
@@ -197,15 +197,18 @@ def user_edit(request):
|
|||||||
message = ''
|
message = ''
|
||||||
acces_list = ["ADMIN", "MEMBRE"]
|
acces_list = ["ADMIN", "MEMBRE"]
|
||||||
|
|
||||||
if email == '0':
|
if email == 'new':
|
||||||
# nouveau
|
# nouveau
|
||||||
membre = {}
|
membre = {}
|
||||||
membre['email'] = ''
|
membre['email'] = ''
|
||||||
membre['nom'] = ''
|
membre['nom'] = ''
|
||||||
|
membre['prenom'] = ''
|
||||||
membre['acces'] = 'MEMBRE'
|
membre['acces'] = 'MEMBRE'
|
||||||
|
membre['modif_le'] = None
|
||||||
|
membre['expire_le'] = None
|
||||||
page_title= 'Nouveau membre'
|
page_title= 'Nouveau membre'
|
||||||
else:
|
else:
|
||||||
# lire la fiche de l'membre
|
# lire la fiche du membre
|
||||||
membre = get_member_by_email(request, email)
|
membre = get_member_by_email(request, email)
|
||||||
if not membre:
|
if not membre:
|
||||||
request.session.flash(u"Utilisateur non trouvé : %s" % email, 'warning')
|
request.session.flash(u"Utilisateur non trouvé : %s" % email, 'warning')
|
||||||
|
|||||||
112
db_mesavoirs.sql
Normal file
112
db_mesavoirs.sql
Normal file
@@ -0,0 +1,112 @@
|
|||||||
|
-- MySQL dump 10.13 Distrib 5.7.17, for Win64 (x86_64)
|
||||||
|
--
|
||||||
|
-- Host: localhost Database: bd_mesavoirs
|
||||||
|
-- ------------------------------------------------------
|
||||||
|
-- Server version 5.7.19-log
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8 */;
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||||
|
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table `members`
|
||||||
|
--
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS `members`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8 */;
|
||||||
|
CREATE TABLE `members` (
|
||||||
|
`email` varchar(55) NOT NULL,
|
||||||
|
`nom` varchar(45) DEFAULT 'UTILISATEUR 000',
|
||||||
|
`prenom` varchar(45) DEFAULT NULL,
|
||||||
|
`mdp` varchar(128) DEFAULT NULL,
|
||||||
|
`mdp_oublie` varchar(128) DEFAULT NULL,
|
||||||
|
`mdp_oublie_date` datetime DEFAULT NULL,
|
||||||
|
`acces` varchar(25) DEFAULT 'MEMBRE',
|
||||||
|
`expire_le` datetime DEFAULT NULL,
|
||||||
|
`cree_le` datetime DEFAULT NULL,
|
||||||
|
`modif_le` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
|
||||||
|
`dern_cnx_le` datetime DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`email`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Liste des Membres';
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping data for table `members`
|
||||||
|
--
|
||||||
|
|
||||||
|
LOCK TABLES `members` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `members` DISABLE KEYS */;
|
||||||
|
INSERT INTO `members` VALUES ('ctphuoc@gmail.com','CAO ','Thien phuoc','a12ecaa430207687ad18a72564609d4f313184bd',NULL,NULL,'ADMIN',NULL,NULL,'2017-07-22 16:32:11','2017-07-22 16:41:34'),('toa.armorial@gmail.com','CAO ','Thien-an',NULL,NULL,NULL,'ADMIN',NULL,'2017-07-22 17:18:51','2017-07-22 16:32:11',NULL);
|
||||||
|
/*!40000 ALTER TABLE `members` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
|
||||||
|
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
|
||||||
|
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
|
||||||
|
/*!50003 SET character_set_client = utf8 */ ;
|
||||||
|
/*!50003 SET character_set_results = utf8 */ ;
|
||||||
|
/*!50003 SET collation_connection = utf8_general_ci */ ;
|
||||||
|
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
|
||||||
|
/*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ;
|
||||||
|
DELIMITER ;;
|
||||||
|
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`127.0.0.1`*/ /*!50003 TRIGGER `bd_mesavoirs`.`members_BEFORE_INSERT` BEFORE INSERT ON `members` FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
set NEW.cree_le = NOW();
|
||||||
|
set NEW.modif_le = NOW();
|
||||||
|
SET NEW.nom = UCASE(NEW.nom);
|
||||||
|
SET NEW.prenom = CONCAT( UCASE(LEFT(NEW.prenom,1)), LCASE(SUBSTRING(NEW.prenom,2)));
|
||||||
|
|
||||||
|
END */;;
|
||||||
|
DELIMITER ;
|
||||||
|
/*!50003 SET sql_mode = @saved_sql_mode */ ;
|
||||||
|
/*!50003 SET character_set_client = @saved_cs_client */ ;
|
||||||
|
/*!50003 SET character_set_results = @saved_cs_results */ ;
|
||||||
|
/*!50003 SET collation_connection = @saved_col_connection */ ;
|
||||||
|
/*!50003 SET @saved_cs_client = @@character_set_client */ ;
|
||||||
|
/*!50003 SET @saved_cs_results = @@character_set_results */ ;
|
||||||
|
/*!50003 SET @saved_col_connection = @@collation_connection */ ;
|
||||||
|
/*!50003 SET character_set_client = utf8 */ ;
|
||||||
|
/*!50003 SET character_set_results = utf8 */ ;
|
||||||
|
/*!50003 SET collation_connection = utf8_general_ci */ ;
|
||||||
|
/*!50003 SET @saved_sql_mode = @@sql_mode */ ;
|
||||||
|
/*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' */ ;
|
||||||
|
DELIMITER ;;
|
||||||
|
/*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 TRIGGER `bd_mesavoirs`.`members_BEFORE_UPDATE` BEFORE UPDATE ON `members` FOR EACH ROW
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
SET NEW.nom = UCASE(NEW.nom);
|
||||||
|
SET NEW.prenom = CONCAT( UCASE(LEFT(NEW.prenom,1)), LCASE(SUBSTRING(NEW.prenom,2)));
|
||||||
|
|
||||||
|
END */;;
|
||||||
|
DELIMITER ;
|
||||||
|
/*!50003 SET sql_mode = @saved_sql_mode */ ;
|
||||||
|
/*!50003 SET character_set_client = @saved_cs_client */ ;
|
||||||
|
/*!50003 SET character_set_results = @saved_cs_results */ ;
|
||||||
|
/*!50003 SET collation_connection = @saved_col_connection */ ;
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping events for database 'bd_mesavoirs'
|
||||||
|
--
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Dumping routines for database 'bd_mesavoirs'
|
||||||
|
--
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||||
|
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||||
|
|
||||||
|
-- Dump completed on 2017-07-22 18:35:29
|
||||||
Reference in New Issue
Block a user