')
html = html.replace('','')
html = html.replace(' | ','')
html = html.replace('','')
html = html.replace('','')
html = html.replace('','')
html = html.replace('','')
data = html.split('')
if len(data)>1:
data.pop(0)
data.pop(0)
new_data = []
for d in data:
d=d.split('')
da=d[0].split('">')
if len(da)>1:
da=da[1]
else:
da=da[0]
db=d[1].split('')
if len(db)>1:
db=db[1].split('')
db=db[0]
else:
db=''
if da!='':
new_data.append({'name':da,'value':db})
schoolInfo = new_data
#school abjects
typestool = getToolByName(self, 'portal_types')
puf_type = getattr(typestool, 'School', None)
if not puf_type:
return 0
puf_type.global_allow = 1
id = schoolInfo[0]['value']
if hasattr(self, id):
#this school object is already in database
pass
else:
id = self.invokeFactory("School", id=id,
title=schoolInfo[1]['value'],
schooltype=schoolInfo[4]['value'],
address=schoolInfo[12]['value'],
location=schoolInfo[11]['value'].replace(',',''),
email=schoolInfo[9]['value'],
www=schoolInfo[10]['value'],
phone=schoolInfo[7]['value'],)
puf_type.global_allow = 0
return REQUEST.RESPONSE.redirect(self.absolute_url()+'/update_schooldata')
security.declareProtected('Manage Portal', 'isInDB')
def isInDB(self, id):
"""if school is in db"""
if hasattr(self, id):
return '#CCFFCC'
return '#FFCCCC'
def charReplace(self,string):
string=string.replace('ä','\xc3\xa4') #ä
string=string.replace('Ä','\xc3\x84') #Ä
string=string.replace('ö','\xc3\xb6') #ö
string=string.replace('Ö','\xc3\xb6') #Ö
string=string.replace('õ','\xc3\xb5') #õ
string=string.replace('Õ','\xC3\x95') #Õ
string=string.replace('ü','\xc3\xbc') #ü
string=string.replace('Ü','\xc3\x9c') #Ü
return string
registerType(SchoolDataBase, PROJECT_NAME)
class School(OrderedBaseFolder):
""" School """
meta_type = "School"
archetype_name = "School"
exclude_from_nav = True
global_allow = 0
filter_content_types = True
allowed_content_types = ()
security = ClassSecurityInfo()
schema = schema + Schema((
StringField('title',
widget=StringWidget(
label="School name",
description="",
label_msgid='label_school_name',
description_msgid='description_school_name',
i18n_domain="eportfolio"),
),
StringField('schooltype',
widget=StringWidget(
label="School type",
description="",
label_msgid='label_school_type',
description_msgid='description_school_type',
i18n_domain="eportfolio"),
),
StringField('address',
widget=StringWidget(
label="Address",
description="",
label_msgid='label_school_address',
description_msgid='description_school_address',
i18n_domain="eportfolio"),
),
StringField('location',
widget=StringWidget(
label="Location",
description="",
label_msgid='label_school_location',
description_msgid='description_school_location',
i18n_domain="eportfolio"),
),
StringField('headmaster',
widget=StringWidget(
label="Headmaster",
description="",
label_msgid='label_school_headmaster',
description_msgid='description_school_headmaster',
i18n_domain="eportfolio"),
),
StringField('email',
widget=StringWidget(
label="E-mail",
description="",
label_msgid='label_school_email',
description_msgid='description_school_email',
i18n_domain="eportfolio"),
),
StringField('www',
widget=StringWidget(
label="WWW",
description="",
label_msgid='label_school_www',
description_msgid='description_school_www',
i18n_domain="eportfolio"),
),
StringField('phone',
widget=StringWidget(
label="Phone",
description="",
label_msgid='label_school_phone',
description_msgid='description_school_phone',
i18n_domain="eportfolio"),
),
StringField('studinglanguage',
widget=StringWidget(
label="Language",
description="",
label_msgid='label_school_language',
description_msgid='description_school_language',
i18n_domain="eportfolio"),
),
StringField('nrofstudents',
widget=StringWidget(
label="Number of students",
description="",
label_msgid='label_school_nrofstudents',
description_msgid='description_school_nrofstudents',
i18n_domain="eportfolio"),
),
))
actions = (
{
'id':'view',
'name':'View',
'action':'string:${object_url}/base_view',
'permissions': ('View',),
},
{
'id':'owner',
'name':'Owner',
'action':'string:${object_url}/school_owner',
'permissions': ('Manage Portal',),
},
{
'id':'subjects',
'name':'Subjects',
'action':'string:${object_url}/school_subjects',
'permissions': ('Manage Portal',),
},
)
def __init__(self, id):
self.id = id
self.subjects = []
self.setSubjects()
def manage_afterAdd(self,item,container):
"""sets permissions"""
self.manage_permission('Manage Portal', ('Manager','School') ,1)
self.manage_permission('View', ('Manager','School') ,1)
def setMasterUserForSchool(self, REQUEST):
""" sets master user for school """
user = REQUEST.get('school_owner')
school = self.id
pm = getToolByName(self, 'portal_membership')
member = pm.getMemberById(user)
member.school = school
def setSubjects(self):
"""subjects"""
self.subjects = []
for subject in SUBJECTS:
self.subjects.append({'name':subject,'nr':0})
self._p_changed = 1
def getSubjects(self):
"""get subjects"""
return self.subjects
def saveSubjects(self, REQUEST):
"""save subjects"""
i = 0
for subject in self.subjects:
nr=REQUEST.get('subject_'+str(i))
self.subjects[i]['nr'] = nr
i = i + 1
self._p_changed = 1
return 1
registerType(School, PROJECT_NAME)
|