]> git.phdru.name Git - m_librarian.git/commitdiff
Feat(web): Сделать множественный выбор в списке книг
authorOleg Broytman <phd@phdru.name>
Fri, 25 May 2018 01:34:50 +0000 (04:34 +0300)
committerOleg Broytman <phd@phdru.name>
Fri, 25 May 2018 01:38:20 +0000 (04:38 +0300)
Сделать список книг в элементе SELECT, серии в OPTGROUP,
книги в OPTION.

m_librarian/web/static/style.css
m_librarian/web/views/books_by_author.py
m_librarian/web/views/books_by_author.tmpl

index 67149dc6798dbb6222cc93017b39bca1f55d7017..7c3502bf2cea90a3c4db2c758f6436b276aa3400 100644 (file)
@@ -1,4 +1,11 @@
+html {
+   width: 99%;
+   height: 99%;
+}
+
 body {
+   width: 99%;
+   height: 99%;
    color: #000000;
    font-family: sans-serif;
    text-decoration: none;
@@ -30,7 +37,3 @@ td, th {
    border: 1px solid black;
    text-align: left;
 }
-
-td.numeric {
-   text-align: right;
-}
index ebb1cc6fd969a8a626ccbd381fae43a012a3fed2..1ae6dc1d57060aa72afd20b788d4b5632f05c57d 100644 (file)
@@ -35,10 +35,10 @@ VFN=valueForName
 currentTime=time.time
 __CHEETAH_version__ = '3.1.0'
 __CHEETAH_versionTuple__ = (3, 1, 0, 'final', 1)
-__CHEETAH_genTime__ = 1523142213.339173
-__CHEETAH_genTimestamp__ = 'Sun Apr  8 02:03:33 2018'
+__CHEETAH_genTime__ = 1527212249.002131
+__CHEETAH_genTimestamp__ = 'Fri May 25 04:37:29 2018'
 __CHEETAH_src__ = 'books_by_author.tmpl'
-__CHEETAH_srcLastModified__ = 'Sun Apr  8 02:03:31 2018'
+__CHEETAH_srcLastModified__ = 'Fri May 25 04:37:19 2018'
 __CHEETAH_docstring__ = 'Autogenerated by Cheetah: The Python-Powered Template Engine'
 
 if __CHEETAH_versionTuple__ < RequiredCheetahVersionTuple:
@@ -96,42 +96,40 @@ class books_by_author(layout):
 
 ''')
         if VFFSL(SL,"books",True): # generated from line 7, col 1
-            write(u'''  <table>
+            write(u'''  <form action="" method="POST" style="height: 80%">
+  <select multiple style="height: 90%">
 ''')
             series = None
-            for book in VFFSL(SL,"books",True): # generated from line 10, col 3
-                if VFFSL(SL,"book.series",True) != VFFSL(SL,"series",True): # generated from line 11, col 3
-                    series = VFFSL(SL,"book.series",True)
-                    if VFFSL(SL,"book.series",True): # generated from line 13, col 3
-                        write(u'''  <tr>
-    <td colspan=2>\u0421\u0435\u0440\u0438\u044f: ''')
-                        _v = VFFSL(SL,"series",True) # u'$series' on line 15, col 26
-                        if _v is not None: write(_filter(_v, rawExpr=u'$series')) # from line 15, col 26.
-                        write(u'''</td>
-  </tr>
+            for book in VFFSL(SL,"books",True): # generated from line 11, col 3
+                if VFFSL(SL,"book.series",True) != VFFSL(SL,"series",True): # generated from line 12, col 3
+                    if VFFSL(SL,"series",True) is not None: # generated from line 13, col 3
+                        write(u'''  </optgroup>
 ''')
-                    else: # generated from line 17, col 3
-                        write(u'''  <tr>
-    <td colspan=2>\u0412\u043d\u0435 \u0441\u0435\u0440\u0438\u0439</td>
-  </tr>
+                    series = VFFSL(SL,"book.series",True)
+                    write(u'''  <optgroup label="''')
+                    if VFFSL(SL,"book.series",True): # generated from line 18, col 3
+                        _v = VFFSL(SL,"series",True) # u'$series' on line 19, col 1
+                        if _v is not None: write(_filter(_v, rawExpr=u'$series')) # from line 19, col 1.
+                    else: # generated from line 20, col 3
+                        write(u'''\u0412\u043d\u0435 \u0441\u0435\u0440\u0438\u0439''')
+                    write(u'''">
 ''')
-                write(u'''  <tr>
-    <td class="numeric">''')
-                _v = VFFSL(SL,"book.ser_no",True) # u'$book.ser_no' on line 24, col 25
-                if _v is not None: write(_filter(_v, rawExpr=u'$book.ser_no')) # from line 24, col 25.
-                write(u'''</td>
-    <td><a href="/download/''')
-                _v = VFFSL(SL,"book.id",True) # u'$book.id' on line 25, col 28
-                if _v is not None: write(_filter(_v, rawExpr=u'$book.id')) # from line 25, col 28.
-                write(u'''/">''')
-                _v = VFFSL(SL,"book.title",True) # u'$book.title' on line 25, col 39
-                if _v is not None: write(_filter(_v, rawExpr=u'$book.title')) # from line 25, col 39.
-                write(u'''</a></td>
-  </tr>
+                write(u'''  <option value="''')
+                _v = VFFSL(SL,"book.id",True) # u'$book.id' on line 25, col 18
+                if _v is not None: write(_filter(_v, rawExpr=u'$book.id')) # from line 25, col 18.
+                write(u'''">''')
+                _v = VFFSL(SL,"book.ser_no",True) # u'$book.ser_no' on line 25, col 28
+                if _v is not None: write(_filter(_v, rawExpr=u'$book.ser_no')) # from line 25, col 28.
+                write(u''' ''')
+                _v = VFFSL(SL,"book.title",True) # u'$book.title' on line 25, col 41
+                if _v is not None: write(_filter(_v, rawExpr=u'$book.title')) # from line 25, col 41.
+                write(u'''</option>
 ''')
-            write(u'''  </table>
+            write(u'''  </optgroup>
+  </select>
+  </form>
 ''')
-        else: # generated from line 29, col 1
+        else: # generated from line 30, col 1
             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>
 ''')
         
index 240771d55d39d7a4ae04d35c54edee06488ed781..96897e97c6876464d937a514878f7801236e5e3b 100644 (file)
@@ -5,27 +5,28 @@
 <h1>$title $author.fullname</h1>
 
 #if $books
-  <table>
+  <form action="" method="POST" style="height: 80%">
+  <select multiple style="height: 90%">
   #set $series = None
   #for $book in $books
   #if $book.series != $series
+  #if $series is not None
+  </optgroup>
+  #end if
   #set $series = $book.series
+  <optgroup label="#slurp
   #if $book.series
-  <tr>
-    <td colspan=2>Серия: $series</td>
-  </tr>
+$series#slurp
   #else
-  <tr>
-    <td colspan=2>Вне серий</td>
-  </tr>
+Вне серий#slurp
   #end if
+">
   #end if
-  <tr>
-    <td class="numeric">$book.ser_no</td>
-    <td><a href="/download/$book.id/">$book.title</a></td>
-  </tr>
+  <option value="$book.id">$book.ser_no $book.title</option>
   #end for
-  </table>
+  </optgroup>
+  </select>
+  </form>
 #else
   <p>Не найдено ни одной книги!</p>
 #end if