Не могу понять в чем ошибка.Помогите пожалуйста.
Код:
# -*- coding: utf-8 -*-
class productpage:
def __init__(self,Management):
self.__managem=Management
def index(self):
s='<a href=..>%s</a>/<a href=addform>%s</a>'%(u'назад',u'добавить')
s+='<table><th bgcolor=gray></th><th bgcolor=gray>%s</th><th bgcolor=gray>%s</th><th bgcolor=gray>%s</th><th bgcolor=gray>%s</th><th bgcolor=gray>%s</th>'%(u'название товара',u'клиент',u'цена товара',u'цена доставки',u'день доставки')
r=1
bg=''
for c in self.__managem.getProductCodes():
s+='<tr%s><td>%d</td>'%(bg,r)
s+='<td>%s</td>'%self.__managem.getProductDenomination(c)
s+='<td>%s</td>'%self.__managem.getProductClientBibliostr(c)
s+='<td>%s</td>'%self.__managem.getProductPrice(c)
s+='<td>%s</td>'%self.__managem.getProductDeliveryprice(c)
s+='<td>%s</td>'%self.__managem.getProductDeliverydays(c)
s+='<td><a href=editform?code=%s>%s</a></td>'%(c,u'редактировать')
s+='<td><a href=delr?code=%s>%s</a></td></tr>'%(c,u'удалить')
r+=1
if bg:bg=''
else:bg=' bgcolor=silver'
s+='</table>'
return s
index.exposed=True
def orderCombo(self,code=0):
s='<select name=order>'
for c in self.__managem.getOrderCodes():
if (code in self.__managem.getProductCodes())and(c==self.__managem.getProductOrderCode(code)):v=' selected'
else:v=' '
s+='<option%s value=%s>%s</option>'%(v,str(c),self.__managem.getOrderName(c))
s+='</select>'
return s
def clientCombo(self,code=0):
s='<select name=client>'
for c in self.__managem.getClientCodes():
if not(c in self.__managem.getProductClientCodes(code)):
s+='<option value=%s>%s</option>'%(str(c),self.__managem.getClientBibliostr(c))
s+='</select>'
return s
def clientList(self,code=0):
s='<table>'
for c in self.__managem.getProductClientCodes(code):
s+='<tr><td>%s</td><td><a href=delauthor?code=%s&acode=%s>%s</td></tr>'%(self.__managem.getClientBibliostr(c),str(code),str(c),u'удалить')
s+='</table>'
return s
def productform(self, code=0, add=True) :
denomination,order,deliveryday,price=' ',0,0,0
if add:a='addaction'
else: a='editaction?code=%s'%code
if code in self.__managem.getProductCodes():
denomination=self.__managem.getProductDenomination(code)
order=self.__managem.getProductOrderCode(code)
deliveryday=self.__managem.getProductDeliveryday(code)
price=self.__managem.getProductPrice(code)
s='''<form action=%s method=post>
<table>
<tr><td>%s</td><td><input type=text name=name value='%s'></td></tr>
<tr><td>%s</td><td>%s</td></tr>
<tr><td>%s</td><td><input type=number name=year value=%s></td></tr>
<tr><td>%s</td><td><input type=number name=pages value=%s></td></tr>
<tr><td><input type=submit></td><td></td></tr>
</table>
</form>'''%(a,u'название',denomination,u'заказ',self.orderCombo(order),u'день доставки',str(deliveryday),u’цена’,str(price))
return s
def addaction(self,denomination,order,deliveryday,price):
code=self.__managem.getProductNewCode()
self.__managem.newProduct(code)
self.__managem.setProductDenomination(code,denomination)
self.__managem.setProductOrder(code,int(order))
self.__managem.setProductDeliveryday(code,deliveryday)
self.__managem.setProductPrice(code,price)
return 'Заказ добавлен<br><a href=index>назад</a>'
addaction.exposed=True
def addform(self):
s=u'Добавить новый заказ<br>'
s+=self.productform(0)
return s
addform.exposed=True
def editform(self,code):
s=u'Редактировать заказ<br>'
s+=self.productform(int(code),False)
s+='''%s
<form action=addauthor?code=%s method=post>
<table>
<tr><td>%s</td><td><input type=submit value=%s></td>
'''%(u'клиенты',str(code),self.clientCombo(int(code)),u'добавить')
s+=self.clientList(int(code))
return s
editform.exposed=True
def editaction(self,code,denomination,order,deliveryday,price):
self.__managem.setProductDenomination(int(code),denomination)
self.__managem.setProductOrder(int(code),int(order))
self.__managem.setProductDeliveryday(int(code),deliveryday)
self.__managem.setProductPrice(int(code),price)
return 'заказ изменен<br><a href=index>назад</a>'
editaction.exposed=True
def addclient(self,code,client):
self.__managem.appendProductClient(int(code),self.__managem.findClientByCode(int(client)))
return '%s<br><a href=editform?code=%s>%s</a>'%(u'клиент добавлен',str(code),u'назад')
addclient.exposed=True
def delclient(self,code,acode):
self.__managem.removeProductClient(int(code),int(acode))
return '%s<br><a href=editform?code=%s>%s</a>'%(u'клиент удален',str(code),u'назад')
delclient.exposed=True
def delr(self,code):
self.__managem.removeProduct(int(code))
return 'заказ удален<br><a href=index>назад</a>'
delr.exposed=True