Merge branch 'master' of JM2L/jm2l into tr4ck3ur/various_fixes_2017

This commit is contained in:
JM2L
2017-11-05 13:28:34 +01:00
committed by Gogs
6 changed files with 50 additions and 24 deletions
+7 -1
View File
@@ -33,6 +33,8 @@ from sqlalchemy.orm import (
from zope.sqlalchemy import ZopeTransactionExtension from zope.sqlalchemy import ZopeTransactionExtension
from jm2l.const import CurrentYear from jm2l.const import CurrentYear
from passlib.hash import argon2
DBSession = scoped_session(sessionmaker(extension=ZopeTransactionExtension())) DBSession = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))
Base = declarative_base() Base = declarative_base()
@@ -247,7 +249,11 @@ class User(Base):
return MediaPath().get_thumb('users', self.uid) return MediaPath().get_thumb('users', self.uid)
def verify_password(self, password): def verify_password(self, password):
return self.password == password if not argon2.identify(self.password): # Update existing clear-text password
self.password = argon2.using(rounds=4).hash(self.password)
DBSession.merge(self)
return argon2.verify(password, self.password)
class TiersOpt(Base): class TiersOpt(Base):
__tablename__ = 'tiers_opt' __tablename__ = 'tiers_opt'
Binary file not shown.

After

Width:  |  Height:  |  Size: 211 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

After

Width:  |  Height:  |  Size: 211 KiB

+5 -5
View File
@@ -65,19 +65,19 @@ DicForm = {
<u>Vendredi soir :</u> <u>Vendredi soir :</u>
<p> <p>
Certains conférenciers viennent de très loin et seront présent d&eacute;s le vendredi.<br /> Certains conférenciers viennent de très loin et seront présent d&eacute;s le vendredi.<br />
Nous vous proposons de nous retrouver au <a href="https://framabee.org/?q=hop%20store%20antibes&pageno=1&category_map">Hop Store</a> Nous vous proposons de nous retrouver à proximité, à la CASA.<br />
<a href="http://groupelacasa.com/la-carte-et-les-menus-1-2-75"> La carte CASA </a>
le vendredi soir autour d'un verre et d'un bon repas ! le vendredi soir autour d'un verre et d'un bon repas !
</p> </p>
<u>Samedi Midi :</u> <u>Samedi Midi :</u>
<p> <p>
&Agrave; la pause du midi, nous vous proposons un repas avec le food-truck "lakitchenette" qui sera présent sur le parking de PolyTech<br /> &Agrave; la pause du midi, nous vous proposons un repas avec le food-truck 'les frères toqués' qui sera présent sur le parking de PolyTech<br />
<a href="http://www.lakitchenette.net/les-piadinas/"> La carte lakitchenette </a>
</p> </p>
<u>Samedi Soir :</u> <u>Samedi Soir :</u>
<p> <p>
Pour conclure la journée nous avons l'habitude de nous retrouver au repas de cloture.<br /> Pour conclure la journée nous avons l'habitude de nous retrouver au repas de cloture.<br />
Nous vous proposons de nous retrouver à proximité, à la CASA.<br /> Nous vous proposons de nous retrouver à Antibes au restaurant Les Tonnelles<br />
<a href="http://groupelacasa.com/la-carte-et-les-menus-1-2-75"> La carte CASA </a> <a href="https://fr-fr.facebook.com/lestonnellesantibes/?_fb_noscript=1"> Les Tonnelles </a>
</p> </p>
</td> </td>
</tr> </tr>
+23 -5
View File
@@ -33,6 +33,8 @@ import shutil
import glob import glob
from jm2l.const import CurrentYear from jm2l.const import CurrentYear
from passlib.hash import argon2
## =-=- Here, We keep some usefull function -=-= ## =-=- Here, We keep some usefull function -=-=
def remove_accents(input_str): def remove_accents(input_str):
""" This function is intended to remove all accent from input unicode string """ """ This function is intended to remove all accent from input unicode string """
@@ -297,7 +299,7 @@ def JSON_TimeLine_Request(request):
"asset": "asset":
{ {
#"media":"https://www.youtube.com/watch?v=91X65eEKxvU&t=6s", #"media":"https://www.youtube.com/watch?v=91X65eEKxvU&t=6s",
"media":embeed_video("video/ogg","http://jm2l.linux-azur.org/resources/2015/Video/jm2l_france3-2015.ogv"), "media":embeed_video("video/ogg","/resources/2015/Video/jm2l_france3-2015.ogv"),
"credit":"Reportage France 3", "credit":"Reportage France 3",
"caption":"JM2L 2015" "caption":"JM2L 2015"
} }
@@ -312,7 +314,7 @@ def JSON_TimeLine_Request(request):
"asset": "asset":
{ {
#"media":"https://www.youtube.com/watch?v=91X65eEKxvU&t=6s", #"media":"https://www.youtube.com/watch?v=91X65eEKxvU&t=6s",
"media":embeed_video("video/ogg","http://jm2l.linux-azur.org/resources/2015/Video/jm2l_france3-2015.ogv"), "media":embeed_video("video/ogg","/resources/2015/Video/jm2l_france3-2015.ogv"),
"credit":"Reportage France 3", "credit":"Reportage France 3",
"caption":"JM2L 2015" "caption":"JM2L 2015"
} }
@@ -339,7 +341,7 @@ def JSON_TimeLine_Request(request):
"text":"<i><span class='c1'>5ème Édition</span></i>", "text":"<i><span class='c1'>5ème Édition</span></i>",
"asset": "asset":
{ {
"media":embeed_video("video/ogg","http://jm2l.linux-azur.org/resources/2010/Video/reportages/JM2L2010-PleinSudTV.ogv"), "media":embeed_video("video/ogg","/resources/2010/Video/reportages/JM2L2010-PleinSudTV.ogv"),
"credit":"<a href='http://pleinsudtv.com/index.php/casa/affichage-en-vignettes/93-casa-culture/582-les-jm-du-logiciel-libre-2010'>Le reportage Plein-sud TV</a>", "credit":"<a href='http://pleinsudtv.com/index.php/casa/affichage-en-vignettes/93-casa-culture/582-les-jm-du-logiciel-libre-2010'>Le reportage Plein-sud TV</a>",
"caption":"JM2L", "caption":"JM2L",
} }
@@ -352,7 +354,7 @@ def JSON_TimeLine_Request(request):
"text":"<i><span class='c1'>2ème Édition</span></i>", "text":"<i><span class='c1'>2ème Édition</span></i>",
"asset": "asset":
{ {
"media":embeed_video("video/ogg","http://jm2l.linux-azur.org/resources/2007/Video/20071110-linux.ogv"), "media":embeed_video("video/ogg","/resources/2007/Video/20071110-linux.ogv"),
"credit":"<a href='http://pleinsudtv.com/index.php/casa/affichage-en-vignettes/93-casa-culture/245-logiciel-libre-linux-jm2l'>Le reportage Plein-sud TV</a>", "credit":"<a href='http://pleinsudtv.com/index.php/casa/affichage-en-vignettes/93-casa-culture/245-logiciel-libre-linux-jm2l'>Le reportage Plein-sud TV</a>",
"caption":"JM2L 2007", "caption":"JM2L 2007",
} }
@@ -518,6 +520,14 @@ def expenses(request):
if dic_out[tab_path[4]].get('RIB') is None: if dic_out[tab_path[4]].get('RIB') is None:
dic_out[tab_path[4]]['RIB'] = {'files':[], 'thumb':[]} dic_out[tab_path[4]]['RIB'] = {'files':[], 'thumb':[]}
u = User.by_slug(tab_path[4]) u = User.by_slug(tab_path[4])
if u is None:
dic_out[tab_path[4]]['User'] = {
'uid':'# NOT FOUND',
'nom':name,
'prenom':'# NOT FOUND',
'slug':'# NOT FOUND'
}
else:
dic_out[tab_path[4]]['User'] = { dic_out[tab_path[4]]['User'] = {
'uid':u.uid, 'uid':u.uid,
'nom':u.nom, 'nom':u.nom,
@@ -539,6 +549,14 @@ def expenses(request):
if dic_out[tab_path[4]].get('Justif') is None: if dic_out[tab_path[4]].get('Justif') is None:
dic_out[tab_path[4]]['Justif'] = {'files':[], 'thumb':[]} dic_out[tab_path[4]]['Justif'] = {'files':[], 'thumb':[]}
u = User.by_slug(tab_path[4]) u = User.by_slug(tab_path[4])
if u is None:
dic_out[tab_path[4]]['User'] = {
'uid':'# NOT FOUND',
'nom':name,
'prenom':'# NOT FOUND',
'slug':'# NOT FOUND'
}
else:
dic_out[tab_path[4]]['User'] = { dic_out[tab_path[4]]['User'] = {
'uid':u.uid, 'uid':u.uid,
'nom':u.nom, 'nom':u.nom,
@@ -1171,7 +1189,7 @@ def Modal(request):
response = render_to_response('jm2l:templates/modals_js.mako', response = render_to_response('jm2l:templates/modals_js.mako',
{'modtype':modtype}, {'modtype':modtype},
request=request) request=request)
request.user.password = form.password.data request.user.password = argon2.using(rounds=4).hash(form.password.data)
DBSession.merge(request.user) DBSession.merge(request.user)
response.content_type = 'text/javascript' response.content_type = 'text/javascript'
return response return response
+3 -1
View File
@@ -32,7 +32,9 @@ requires = [
'pyramid_mailer', 'pyramid_mailer',
'apscheduler', 'apscheduler',
'qrcode', 'qrcode',
'reportlab' 'reportlab',
'passlib',
'argon2_cffi'
] ]
setup(name='JM2L', setup(name='JM2L',