Commit 50e1dd3a authored by mitshel's avatar mitshel
Browse files

В ссылка на Все книги автора к аттрибуту title применяется преобразование websym

в которм в частности двойные кавычки заменяются на одинарные.
В некоторых OPDS клиентах двойные кавычки внутри title приводит к ошибке.
Замена двойных кавычек на &quote; тоже не полностью решает проблему поскольку некоторые
клиенты так и выводят ...&quote;...
parent ed628d87
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -37,9 +37,12 @@ def translit(s):
       s = s.replace(k,table2[k])
   return s.translate(table1)

def websym(s):
def websym(s,attr=False):
    """Replace special web-symbols"""
    result = s
    if attr:
        table = {'&':'&amp;','<':'&lt;','"':'\''}
    else:
        table = {'&':'&amp;','<':'&lt;'}
    for k in table.keys():
        result = result.replace(k,table[k])
@@ -140,7 +143,7 @@ def entry_authors(db,book_id,link_show=False):
       authors+=last_name+' '+first_name
       if link_show:
          author_ref=cfg.CGI_PATH+'?id=22'+str(author_id)
          enc_print('<link href="'+author_ref+'" rel="related" type="application/atom+xml;profile=opds-catalog" title="Все книги автора '+last_name+' '+first_name+'" />')
          enc_print('<link href="'+author_ref+'" rel="related" type="application/atom+xml;profile=opds-catalog" title="Все книги автора '+websym(last_name,True)+' '+websym(first_name,True)+'" />')
       else:
          enc_print('<content type="text">'+authors+'</content>')
   return authors