Commit b10e2239 authored by Dmitry Shelepnev's avatar Dmitry Shelepnev
Browse files

End day commit

parent adaeabdb
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -349,13 +349,16 @@ class SearchBooksFeed(AuthFeed):
        
        # Поиск книг по подсроке
        if  searchtype == 'm':
            books = Book.objects.extra(where=["upper(title) like %s"], params=["%%%s%%"%searchterms.upper()]).order_by('title','-docdate')
            #books = Book.objects.extra(where=["upper(title) like %s"], params=["%%%s%%"%searchterms.upper()]).order_by('title','-docdate')
            books = Book.objects.filter(search_title__contains=searchterms.upper()).order_by('title','-docdate')
        # Поиск книг по начальной подстроке
        elif searchtype == 'b':
            books = Book.objects.extra(where=["upper(title) like %s"], params=["%s%%"%searchterms.upper()]).order_by('title','-docdate')
            #books = Book.objects.extra(where=["upper(title) like %s"], params=["%s%%"%searchterms.upper()]).order_by('title','-docdate')
            books = Book.objects.filter(search_title__startwith=searchterms.upper()).order_by('title','-docdate')
        # Поиск книг по точному совпадению наименования
        elif searchtype == 'e':
            books = Book.objects.extra(where=["upper(title)=%s"], params=["%s"%searchterms.upper()]).order_by('title','-docdate')
            #books = Book.objects.extra(where=["upper(title)=%s"], params=["%s"%searchterms.upper()]).order_by('title','-docdate')
            books = Book.objects.filter(search_title=searchterms.upper()).order_by('title','-docdate')
        # Поиск книг по автору
        elif searchtype == 'a':
            try:
+3 −2
Original line number Diff line number Diff line
@@ -2,6 +2,7 @@ import os

from django.db.models import Q
from django.utils.translation import ugettext as _
from django.db import connection

from opds_catalog.models import Book, Catalog, Author, Genre, Series, bseries, bauthor, bgenre, bookshelf, Counter, LangCodes

@@ -180,7 +181,7 @@ def findauthor(full_name):
    return author

def addauthor(full_name):
    author, created = Author.objects.get_or_create(full_name=full_name, search_full_name=full_name.upper(), lang_code=getlangcode(full_name))
    author, created = Author.objects.get_or_create(full_name=full_name, defaults={'search_full_name':full_name.upper(), 'lang_code':getlangcode(full_name)})
    return author

def addbauthor(book, author):
@@ -198,7 +199,7 @@ def addbgenre(book, genre):
    #book.genres.add(genre)

def addseries(ser):
    series, created = Series.objects.get_or_create(ser=ser, search_ser=ser.upper(), lang_code=getlangcode(ser))
    series, created = Series.objects.get_or_create(ser=ser, defaults={'search_ser':ser.upper(), 'lang_code':getlangcode(ser)})
    return series

def addbseries(book, ser, ser_no):
Loading