|
@@ -254,7 +254,7 @@ async def register_old(request: Request):
|
|
|
mailer.register_verify('請至點擊網址驗證 : https://www.choozmo.com:8887/verify_email?code='+code, user.email)
|
|
|
return {'msg':{'eng':'Register success! Please login at previous page','zh':'註冊成功! 請回到上頁登入帳號'}}
|
|
|
else :
|
|
|
- return {'msg':'error'}
|
|
|
+ return {'msg':{'eng':'error','zh':'error'}}
|
|
|
#return templates.TemplateResponse("make_video.html", {"request": request, "success": True},status_code=status.HTTP_302_FOUND)
|
|
|
#return templates.TemplateResponse("login.html", {'request': request,"success": True}, status_code=status.HTTP_302_FOUND)
|
|
|
else:
|
|
@@ -273,7 +273,7 @@ async def register(request: models.register_req):
|
|
|
mailer.register_verify('請至點擊網址驗證 : https://www.choozmo.com:8887/verify_email?code='+code, request.email)
|
|
|
return {'msg':{'eng':'Register success! Please login at previous page','zh':'註冊成功! 請回到上頁登入帳號'}}
|
|
|
else :
|
|
|
- return {'msg':'error'}
|
|
|
+ return {'msg':{'eng':'error','zh':'error'}}
|
|
|
else:
|
|
|
return {'msg':{'eng':user.username+' is duplicated user name try another','zh':user.username+'重複,請更改'}}
|
|
|
|
|
@@ -396,7 +396,7 @@ async def make_anchor_video_gSlide(req:models.gSlide_req,token: str = Depends(oa
|
|
|
filename = req.slide_url.replace(resource_server+pttx_sub_folder,resource_folder+pttx_sub_folder)
|
|
|
name, text_content, image_urls = gSlide.parse_pttx_url(filename,img_upload_folder,resource_server+tmp_img_sub_folder,eng=False)
|
|
|
if len(image_urls) != len(text_content):
|
|
|
- return {'msg':'副標題數量、圖片(影片)數量以及台詞數量必須一致'}
|
|
|
+ return {'msg':{'eng':'number of subtitles and images(videos) should be the same','zh':'副標題數量、圖片(影片)數量以及台詞數量必須一致'}}
|
|
|
for idx in range(len(image_urls)):
|
|
|
if 'http' not in image_urls[idx]:
|
|
|
image_urls[idx] = 'http://'+image_urls[idx]
|
|
@@ -404,10 +404,10 @@ async def make_anchor_video_gSlide(req:models.gSlide_req,token: str = Depends(oa
|
|
|
for txt in text_content:
|
|
|
if re.search('[a-zA-Z]', txt) !=None:
|
|
|
print('語言錯誤')
|
|
|
- return {'msg':'輸入字串不能包含英文字!'}
|
|
|
+ return {'msg':{'eng':'English is not allowed in subtitles','zh':'輸入字串不能包含英文字!'}}
|
|
|
if re.search(',', txt) !=None:
|
|
|
print('包含非法符號')
|
|
|
- return {'msg':'輸入不能含有,符號'}
|
|
|
+ return {'msg':{'eng':'symbol "," is not allowede','zh':'輸入不能含有","符號'}}
|
|
|
name_hash = str(time.time()).replace('.','')
|
|
|
for imgu in image_urls:
|
|
|
try:
|
|
@@ -417,7 +417,7 @@ async def make_anchor_video_gSlide(req:models.gSlide_req,token: str = Depends(oa
|
|
|
im = Image.open(requests.get(imgu, stream=True).raw)
|
|
|
im= im.convert("RGB")
|
|
|
except:
|
|
|
- return {'msg':"無法辨別圖片網址"+imgu}
|
|
|
+ return {'msg':{'eng':req.imgurl+'cant be proccessed','zh':"無法辨別圖片網址"+req.imgurl}}
|
|
|
user_id = get_user_id(token)
|
|
|
proto_req = models.request_normal()
|
|
|
proto_req.text_content = text_content
|
|
@@ -428,13 +428,13 @@ async def make_anchor_video_gSlide(req:models.gSlide_req,token: str = Depends(oa
|
|
|
video_id = save_history(proto_req,name_hash,user_id)
|
|
|
x = threading.Thread(target=gen_video_queue, args=(name_hash,name, text_content, image_urls,int(req.avatar),req.multiLang,video_id,user_id))
|
|
|
x.start()
|
|
|
- return {"msg":"製作影片需要時間,請您耐心等候,成果會傳送至LINE群組中"}
|
|
|
+ return {"msg":"ok"}
|
|
|
|
|
|
@app.post("/make_anchor_video_long")
|
|
|
async def make_anchor_video_long(req:models.request,token: str = Depends(oauth2_scheme)):
|
|
|
left_tag = [m.start() for m in re.finditer('{', req.text_content[0])]
|
|
|
if len(req.image_urls) != len(left_tag):
|
|
|
- return {'msg':'副標題數量、圖片(影片)數量以及台詞數量必須一致'}
|
|
|
+ return {'msg':{'eng':'number of subtitles and images(videos) should be the same','zh':'副標題數量、圖片(影片)數量以及台詞數量必須一致'}}
|
|
|
for idx in range(len(req.image_urls)):
|
|
|
if 'http' not in req.image_urls[idx]:
|
|
|
req.image_urls[idx] = 'http://'+req.image_urls[idx]
|
|
@@ -442,10 +442,10 @@ async def make_anchor_video_long(req:models.request,token: str = Depends(oauth2_
|
|
|
for txt in req.text_content:
|
|
|
if re.search('[a-zA-Z]', txt) !=None:
|
|
|
print('語言錯誤')
|
|
|
- return {'msg':'輸入字串不能包含英文字!'}
|
|
|
+ return {'msg':{'eng':'English is not allowed in subtitles','zh':'輸入字串不能包含英文字!'}}
|
|
|
if re.search(',', txt) !=None:
|
|
|
print('包含非法符號')
|
|
|
- return {'msg':'輸入不能含有,符號'}
|
|
|
+ return {'msg':{'eng':'symbol "," is not allowede','zh':'輸入不能含有","符號'}}
|
|
|
name_hash = str(time.time()).replace('.','')
|
|
|
for imgu in req.image_urls:
|
|
|
try:
|
|
@@ -455,7 +455,7 @@ async def make_anchor_video_long(req:models.request,token: str = Depends(oauth2_
|
|
|
im = Image.open(requests.get(imgu, stream=True).raw)
|
|
|
im= im.convert("RGB")
|
|
|
except:
|
|
|
- return {'msg':"無法辨別圖片網址"+imgu}
|
|
|
+ return {'msg':{'eng':req.imgurl+'cant be proccessed','zh':"無法辨別圖片網址"+req.imgurl}}
|
|
|
user_id = get_user_id(token)
|
|
|
video_id = save_history(req,name_hash,user_id)
|
|
|
x = threading.Thread(target=gen_video_long_queue, args=(name_hash,req.name, req.text_content, req.image_urls,int(req.avatar),req.multiLang,video_id,user_id))
|
|
@@ -465,7 +465,7 @@ async def make_anchor_video_long(req:models.request,token: str = Depends(oauth2_
|
|
|
@app.post("/make_anchor_video")
|
|
|
async def make_anchor_video(req:models.request,token: str = Depends(oauth2_scheme)):
|
|
|
if len(req.image_urls) != len(req.text_content):
|
|
|
- return {'msg':'副標題數量、圖片(影片)數量以及台詞數量必須一致'}
|
|
|
+ return {'msg':{'eng':'number of subtitles and images(videos) should be the same','zh':'副標題數量、圖片(影片)數量以及台詞數量必須一致'}}
|
|
|
for idx in range(len(req.image_urls)):
|
|
|
if 'http' not in req.image_urls[idx]:
|
|
|
req.image_urls[idx] = 'http://'+req.image_urls[idx]
|
|
@@ -473,10 +473,10 @@ async def make_anchor_video(req:models.request,token: str = Depends(oauth2_schem
|
|
|
for txt in req.text_content:
|
|
|
if re.search('[a-zA-Z]', txt) !=None:
|
|
|
print('語言錯誤')
|
|
|
- return {'msg':'輸入字串不能包含英文字!'}
|
|
|
+ return {'msg':{'eng':'English is not allowed in subtitles','zh':'輸入字串不能包含英文字!'}}
|
|
|
if re.search(',', txt) !=None:
|
|
|
print('包含非法符號')
|
|
|
- return {'msg':'輸入不能含有,符號'}
|
|
|
+ return {'msg':{'eng':'symbol "," is not allowede','zh':'輸入不能含有","符號'}}
|
|
|
name_hash = str(time.time()).replace('.','')
|
|
|
for imgu in req.image_urls:
|
|
|
try:
|
|
@@ -486,7 +486,7 @@ async def make_anchor_video(req:models.request,token: str = Depends(oauth2_schem
|
|
|
im = Image.open(requests.get(imgu, stream=True).raw)
|
|
|
im= im.convert("RGB")
|
|
|
except:
|
|
|
- return {'msg':"無法辨別圖片網址"+imgu}
|
|
|
+ return {'msg':{'eng':req.imgurl+'cant be proccessed','zh':"無法辨別圖片網址"+req.imgurl}}
|
|
|
user_id = get_user_id(token)
|
|
|
video_id = save_history(req,name_hash,user_id)
|
|
|
x = threading.Thread(target=gen_video_queue, args=(name_hash,req.name, req.text_content, req.image_urls,int(req.avatar),req.multiLang,video_id,user_id))
|
|
@@ -496,7 +496,7 @@ async def make_anchor_video(req:models.request,token: str = Depends(oauth2_schem
|
|
|
@app.post("/make_anchor_video_eng")
|
|
|
async def make_anchor_video_eng(req:models.request_eng,token: str = Depends(oauth2_scheme)):
|
|
|
if len(req.image_urls) != len(req.sub_titles) or len(req.sub_titles) != len(req.text_content):
|
|
|
- return {'msg':'副標題數量、圖片(影片)數量以及台詞數量必須一致'}
|
|
|
+ return {'msg':{'eng':'number of subtitles and images(videos) should be the same','zh':'副標題數量、圖片(影片)數量以及台詞數量必須一致'}}
|
|
|
for idx in range(len(req.image_urls)):
|
|
|
if 'http' not in req.image_urls[idx]:
|
|
|
req.image_urls[idx] = 'http://'+req.image_urls[idx]
|
|
@@ -509,7 +509,7 @@ async def make_anchor_video_eng(req:models.request_eng,token: str = Depends(oaut
|
|
|
im = Image.open(requests.get(imgu, stream=True).raw)
|
|
|
im= im.convert("RGB")
|
|
|
except:
|
|
|
- return {'msg':"無法辨別圖片網址"+imgu}
|
|
|
+ return {'msg':{'eng':req.imgurl+'cant be proccessed','zh':"無法辨別圖片網址"+req.imgurl}}
|
|
|
user_id = get_user_id(token)
|
|
|
video_id = save_history(req,name_hash, user_id)
|
|
|
x = threading.Thread(target=gen_video_queue_eng, args=(name_hash,req.name, req.text_content, req.image_urls,req.sub_titles,int(req.avatar),video_id))
|