]> git.phdru.name Git - m_librarian.git/blob - m_librarian/web/views/list_books.py
7431a3a9a6e68e0ccf2ad9b62b6502d261de306a
[m_librarian.git] / m_librarian / web / views / list_books.py
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3
4
5
6
7 ##################################################
8 ## DEPENDENCIES
9 import sys
10 import os
11 import os.path
12 try:
13     import builtins as builtin
14 except ImportError:
15     import __builtin__ as builtin
16 from os.path import getmtime, exists
17 import time
18 import types
19 from Cheetah.Version import MinCompatibleVersion as RequiredCheetahVersion
20 from Cheetah.Version import MinCompatibleVersionTuple as RequiredCheetahVersionTuple
21 from Cheetah.Template import Template
22 from Cheetah.DummyTransaction import *
23 from Cheetah.NameMapper import NotFound, valueForName, valueFromSearchList, valueFromFrameOrSearchList
24 from Cheetah.CacheRegion import CacheRegion
25 import Cheetah.Filters as Filters
26 import Cheetah.ErrorCatchers as ErrorCatchers
27 from Cheetah.compat import unicode
28 import cgi
29 from views.layout import layout
30
31 ##################################################
32 ## MODULE CONSTANTS
33 VFFSL=valueFromFrameOrSearchList
34 VFSL=valueFromSearchList
35 VFN=valueForName
36 currentTime=time.time
37 __CHEETAH_version__ = '3.1.0'
38 __CHEETAH_versionTuple__ = (3, 1, 0, 'final', 1)
39 __CHEETAH_genTime__ = 1528661355.731921
40 __CHEETAH_genTimestamp__ = 'Sun Jun 10 23:09:15 2018'
41 __CHEETAH_src__ = 'list_books.tmpl'
42 __CHEETAH_srcLastModified__ = 'Sun Jun 10 23:09:01 2018'
43 __CHEETAH_docstring__ = 'Autogenerated by Cheetah: The Python-Powered Template Engine'
44
45 if __CHEETAH_versionTuple__ < RequiredCheetahVersionTuple:
46     raise AssertionError(
47       'This template was compiled with Cheetah version'
48       ' %s. Templates compiled before version %s must be recompiled.'%(
49          __CHEETAH_version__, RequiredCheetahVersion))
50
51 ##################################################
52 ## CLASSES
53
54 class list_books(layout):
55
56     ##################################################
57     ## CHEETAH GENERATED METHODS
58
59
60     def __init__(self, *args, **KWs):
61
62         super(list_books, self).__init__(*args, **KWs)
63         if not self._CHEETAH__instanceInitialized:
64             cheetahKWArgs = {}
65             allowedKWs = 'searchList namespaces filter filtersLib errorCatcher'.split()
66             for k,v in KWs.items():
67                 if k in allowedKWs: cheetahKWArgs[k] = v
68             self._initCheetahInstance(**cheetahKWArgs)
69         
70
71     def body(self, **KWS):
72
73
74
75         ## CHEETAH: generated from #def body at line 5, col 1.
76         trans = KWS.get("trans")
77         if (not trans and not self._CHEETAH__isBuffering and not callable(self.transaction)):
78             trans = self.transaction # is None unless self.awake() was called
79         if not trans:
80             trans = DummyTransaction()
81             _dummyTrans = True
82         else: _dummyTrans = False
83         write = trans.response().write
84         SL = self._CHEETAH__searchList
85         _filter = self._CHEETAH__currentFilter
86         
87         ########################################
88         ## START - generated method body
89         
90         write(u'''<h1>''')
91         _v = VFFSL(SL,"title",True) # u'$title' on line 6, col 5
92         if _v is not None: write(_filter(_v, rawExpr=u'$title')) # from line 6, col 5.
93         write(u'''</h1>
94
95 ''')
96         if VFFSL(SL,"books_by_author",True): # generated from line 8, col 1
97             write(u'''  <form action="/download/" method="POST" style="height: 80%">
98   <table style="width: 100%; height: 90%">
99 ''')
100             series = None
101             for author in VFFSL(SL,"sorted",False)(VFFSL(SL,"books_by_author",True)): # generated from line 12, col 3
102                 books = VFFSL(SL,"books_by_author",True)[VFFSL(SL,"author",True)]
103                 for book in VFFSL(SL,"books",True): # generated from line 14, col 5
104                     if VFFSL(SL,"book.series",True) != VFFSL(SL,"series",True): # generated from line 15, col 5
105                         series = VFFSL(SL,"book.series",True)
106                         write(u'''  <tr>
107   <td colspan=2><b>
108   ''')
109                         _v = VFFSL(SL,"author",True) # u'$author' on line 19, col 3
110                         if _v is not None: write(_filter(_v, rawExpr=u'$author')) # from line 19, col 3.
111                         write(u''' \u2014 <i>
112 ''')
113                         if VFFSL(SL,"book.series",True): # generated from line 20, col 3
114                             _v = VFN(VFFSL(SL,"cgi",True),"escape",False)(VFFSL(SL,"series",True), 1) # u'$cgi.escape($series, 1)' on line 21, col 1
115                             if _v is not None: write(_filter(_v, rawExpr=u'$cgi.escape($series, 1)')) # from line 21, col 1.
116                         else: # generated from line 22, col 3
117                             write(u'''\u0412\u043d\u0435 \u0441\u0435\u0440\u0438\u0439''')
118                         write(u'''  </i></b></td>
119   </tr>
120 ''')
121                     write(u'''  <tr>
122   <td><input type=checkbox name=books value="''')
123                     _v = VFFSL(SL,"book.id",True) # u'$book.id' on line 29, col 46
124                     if _v is not None: write(_filter(_v, rawExpr=u'$book.id')) # from line 29, col 46.
125                     write(u'''"></td>
126   <td>''')
127                     _v = VFFSL(SL,"book.ser_no",True) # u'$book.ser_no' on line 30, col 7
128                     if _v is not None: write(_filter(_v, rawExpr=u'$book.ser_no')) # from line 30, col 7.
129                     write(u''' ''')
130                     _v = VFN(VFFSL(SL,"cgi",True),"escape",False)(VFFSL(SL,"book.title",True)) # u'$cgi.escape($book.title)' on line 30, col 20
131                     if _v is not None: write(_filter(_v, rawExpr=u'$cgi.escape($book.title)')) # from line 30, col 20.
132                     write(u'''</td>
133   </tr>
134 ''')
135             write(u'''  <tr>
136   <td colspan=2 style="text-align: center"><input type="submit" value="\u0421\u043a\u0430\u0447\u0430\u0442\u044c"></td>
137   </tr>
138   </table>
139   </form>
140 ''')
141         else: # generated from line 39, col 1
142             write(u'''  <p>\u041d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e \u043d\u0438 \u043e\u0434\u043d\u043e\u0439 \u043a\u043d\u0438\u0433\u0438!</p>
143 ''')
144         
145         ########################################
146         ## END - generated method body
147         
148         return _dummyTrans and trans.response().getvalue() or ""
149         
150
151     def writeBody(self, **KWS):
152
153
154
155         ## CHEETAH: main method generated for this template
156         trans = KWS.get("trans")
157         if (not trans and not self._CHEETAH__isBuffering and not callable(self.transaction)):
158             trans = self.transaction # is None unless self.awake() was called
159         if not trans:
160             trans = DummyTransaction()
161             _dummyTrans = True
162         else: _dummyTrans = False
163         write = trans.response().write
164         SL = self._CHEETAH__searchList
165         _filter = self._CHEETAH__currentFilter
166         
167         ########################################
168         ## START - generated method body
169         
170         
171         ########################################
172         ## END - generated method body
173         
174         return _dummyTrans and trans.response().getvalue() or ""
175         
176     ##################################################
177     ## CHEETAH GENERATED ATTRIBUTES
178
179
180     _CHEETAH__instanceInitialized = False
181
182     _CHEETAH_version = __CHEETAH_version__
183
184     _CHEETAH_versionTuple = __CHEETAH_versionTuple__
185
186     _CHEETAH_genTime = __CHEETAH_genTime__
187
188     _CHEETAH_genTimestamp = __CHEETAH_genTimestamp__
189
190     _CHEETAH_src = __CHEETAH_src__
191
192     _CHEETAH_srcLastModified = __CHEETAH_srcLastModified__
193
194     title = 'Список книг'
195
196     _mainCheetahMethod_for_list_books = 'writeBody'
197
198 ## END CLASS DEFINITION
199
200 if not hasattr(list_books, '_initCheetahAttributes'):
201     templateAPIClass = getattr(list_books,
202                                '_CHEETAH_templateClass',
203                                Template)
204     templateAPIClass._addCheetahPlumbingCodeToClass(list_books)
205
206
207 # CHEETAH was developed by Tavis Rudd and Mike Orr
208 # with code, advice and input from many other volunteers.
209 # For more information visit http://cheetahtemplate.org/
210
211 ##################################################
212 ## if run from command line:
213 if __name__ == '__main__':
214     from Cheetah.TemplateCmdLineIface import CmdLineIface
215     CmdLineIface(templateObj=list_books()).run()
216
217