Skip to content

Commit 9c1073f

Browse files
committed
[IMP] Ajout multi fichiers pour galerie & lien pour autres
1 parent 77f4a84 commit 9c1073f

File tree

5 files changed

+33
-45
lines changed

5 files changed

+33
-45
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,4 +107,4 @@ dist
107107
bot/__pycache__
108108
env
109109
back/data
110-
*UrlAxios*
110+
src/utils/urlAxios/UrlAxios.js

back/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ content-type: application/json
6666
"titre": <stand_name>,
6767
"description": <stand_domaine>,
6868
"type": <site_link>,
69-
"link": <account_type>,
69+
"link": <link>,
7070
"file": <file> (if one file),
7171
"multi_file": <multi_file> (if many file)
7272
}

back/main.py

Lines changed: 21 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818
# ---------------------------------------
1919
from conf import database
2020
# ---------------------------------------
21+
import codecs
22+
codecs.register(lambda name: codecs.lookup('utf8') if name == 'utf8mb4' else None)
23+
2124

2225
app = Flask(__name__)
2326
CORS(app)
@@ -199,37 +202,24 @@ def add_content():
199202
compte_id = get_jwt_identity().split("+")[0]
200203

201204
if request.form:
202-
filename = None
205+
filenames, filename = [], None
203206
titre = request.form.get("titre")
204207
description = request.form.get("description")
205208
type = request.form.get("type")
206-
link = request.form.get("link")
209+
media = request.form.get("media")
207210

208-
if request.files:
211+
if request.files.getlist("media"):
209212
compte_folder = os.path.join(
210213
app.config['UPLOAD_FOLDER'], str(compte_id)
211214
)
212215
Path(compte_folder).mkdir(parents=True, exist_ok=True)
213-
filenames = []
214-
if request.files.getlist("multi_file"):
215-
files = request.files.getlist("multi_file")
216-
for file in files:
217-
filename = str(
218-
time.time()) + '_' + secure_filename(file.filename)
219-
file.save(
220-
os.path.join(compte_folder, filename))
221-
filenames.append(filename)
222-
223-
elif request.files.get("file"):
224-
fichier = request.files['file']
225-
226-
if fichier:
227-
filename = str(time.time()) + '_' + secure_filename(
228-
fichier.filename)
229-
230-
fichier.save(
231-
os.path.join(compte_folder, filename)
232-
)
216+
files = request.files.getlist("media")
217+
for file in files:
218+
filename = str(
219+
time.time()) + '_' + secure_filename(file.filename)
220+
file.save(
221+
os.path.join(compte_folder, filename))
222+
filenames.append(filename)
233223

234224
if titre and type and compte_id:
235225
req = """
@@ -239,31 +229,27 @@ def add_content():
239229
"""
240230

241231
if filenames:
242-
CURSOR.executemany(req, (
243-
[
244-
(
245-
titre,
246-
description,
247-
type,
248-
filename,
249-
link,
250-
compte_id) for filename in filenames])
232+
CURSOR.executemany(req, [(
233+
titre,
234+
description,
235+
type,
236+
filename,
237+
compte_id) for filename in filenames]
251238
)
252239
else:
253240
CURSOR.execute(req, (
254241
titre,
255242
description,
256243
type,
257-
filename or link,
244+
media,
258245
compte_id
259246
)
260247
)
261248

262249
DB.commit()
263250
return {
264251
"error": False,
265-
"message": "Contenu inserted",
266-
"id": CURSOR.lastrowid
252+
"message": "Contenu inserted"
267253
}, 200
268254

269255
return {

front/src/utils/service/CompteService.js

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,21 +22,23 @@ class CompteService{
2222
}
2323
)
2424
}
25-
AddContenu(titre, description, type, file, lien){
25+
AddContenu(titre, description, type, files, lien){
2626
var content = new FormData();
2727
let media = null;
28-
if(lien !== ""){
28+
if(lien){
2929
media = lien
30+
content.append("media", media);
3031
} else{
31-
if(file.size < 25000000){
32-
media = file
32+
if(files.length <= 10){
33+
for(let file of files){
34+
content.append("media", file);
35+
}
3336
}
3437
}
3538

3639
content.append("titre", titre);
3740
content.append("description", description);
38-
content.append("type", type);
39-
content.append("media", media);
41+
content.append("type", type);
4042

4143
return RouteAxios.post('/add_content', content,{
4244
headers: {

front/src/utils/urlAxios/UrlAxios.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import Axios from 'axios';
22

3-
const uRI = "http://localhost:7878/api/v1"
4-
//const uRI = "https://forum-api.iteam-s.mg/api/v1"
3+
//const uRI = "http://localhost:7878/api/v1"
4+
const uRI = "https://forum-api.iteam-s.mg/api/v1"
55

66
const RouteAxios = Axios.create({
77
baseURL: uRI /*route v1 with endpoin '/login' && 'add_account' */

0 commit comments

Comments
 (0)