1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/noalyss_ynh.git synced 2024-09-03 19:46:20 +02:00
noalyss_ynh/sources/dev/manage-code/widget/transform.py

101 lines
3 KiB
Python
Raw Normal View History

2015-09-27 00:35:53 +02:00
#!/usr/bin/python
# brief : replace the all class widget
#
# This file is a part of NOALYSS under GPL
# Author D. DE BONTRIDDER danydb@aevalys.eu
import glob
import sys
import re
class Transform:
widget=re.compile("new widget.*;.*")
wegal=re.compile('.*=')
wtext=re.compile("text",re.IGNORECASE)
wselect=re.compile("select",re.IGNORECASE)
wjsDate=re.compile("js_date",re.IGNORECASE)
wHidden=re.compile("hidden",re.IGNORECASE)
wcheckbox=re.compile("checkbox",re.IGNORECASE)
wJSSearch_Poste=re.compile("js_search_poste",re.IGNORECASE)
wJSSearch_only=re.compile("js_search_only",re.IGNORECASE)
wSpan=re.compile("span",re.IGNORECASE)
wFile=re.compile("file",re.IGNORECASE)
wRadio=re.compile("radio",re.IGNORECASE)
wButton=re.compile("button",re.IGNORECASE)
wTextarea=re.compile("textarea",re.IGNORECASE)
wJSConcerned=re.compile("js_concerned",re.IGNORECASE)
wTva=re.compile("js_tva",re.IGNORECASE)
wSearch=re.compile("js_search\"",re.IGNORECASE)
string=""
def __init__(self,p_string):
self.string=p_string
def transform(self):
result=self.string
found_widgets=self.widget.findall(self.string)
if len(found_widgets) > 0:
sEgal=self.wegal.findall(result)
found_widget=found_widgets[0]
result=""
if len(self.wtext.findall(found_widget))>0:
result="new IText"
if len(self.wselect.findall(found_widget))>0:
result="new ISelect"
if len(self.wjsDate.findall(found_widget))>0:
result="new IDate"
if len(self.wHidden.findall(found_widget))>0:
result="new IHidden"
if len(self.wcheckbox.findall(found_widget))>0:
result="new ICheckBox"
if len(self.wJSSearch_Poste.findall(found_widget))>0:
result="new IPoste"
if len(self.wJSSearch_only.findall(found_widget))>0:
result="new ICard"
if len(self.wSpan.findall(found_widget))>0:
result="new ISpan"
if len(self.wFile.findall(found_widget))>0:
result="new IFile"
if len(self.wRadio.findall(found_widget))>0:
result="new IRadio"
if len(self.wTextarea.findall(found_widget))>0:
result="new ITextArea"
if len(self.wButton.findall(found_widget))>0:
result="new IButton"
if len(self.wJSConcerned.findall(found_widget))>0:
result="new IConcerned"
if len(self.wTva.findall(found_widget))>0:
result="new ITva"
if len(self.wSearch.findall(found_widget))>0:
result="new ISearch"
if result == "" :
print "Invalid widget :"+self.string
return 'INVALIDWIDGET '+self.string
result=sEgal[0]+result
reArg=re.compile('\(.*\)')
content=reArg.findall(self.string)
reSplit=re.compile(',')
aArg=reSplit.split(content[0])
if len(aArg) == 1 :
return result+'();'+"\n"
b=aArg[1:]
virg=""
arg=""
for i in b:
arg=arg+virg+i
virg=','
return result+'('+arg+';'+"\n"
return result
if __name__ == "__main__":
string=" $button_escape=new widget('button','Echapper');"
a=Transform(string)
print a.transform()
#
# if len(sys.argv) < 1 :
# print "Erreur pas de fichier comme argument"
# sys.exit(1)
# files=glob.glob(sys.argv[1])
# for file in files:
# lines=file.readlines()
# for line in lines:
#