}
$c->stash->{'menu_path'} = [] unless $c->stash->{'menu_path'};
+ $self->add_serienlist_menu($c) if $c->session->{'from_serie_list'};
push @{ $c->stash->{'menu_path'} }, {
'path' => $c->web_path("/serie/new"),
'name' => "Neu"
#-------------------------------------------------------
+=head2 form_view( )
+
+Ansehen einer vorhandenen Buchserie.
+
+=cut
+
+sub form_view : Path('view') {
+
+ my ( $self, $c ) = @_;
+ my $K = ( caller(0) )[3] . "(): ";
+
+ $c->log->debug( $K . "aufgerufen." ) if $c->stash->{'debug_level'} > 2;
+
+ $c->stash->{'menu_path'} = [] unless $c->stash->{'menu_path'};
+ $self->add_serienlist_menu($c) if $c->session->{'from_serie_list'};
+ push @{ $c->stash->{'menu_path'} }, {
+ 'path' => $c->web_path("/serie/view"),
+ 'name' => "Betrachten"
+ };
+
+ $c->stash->{'error_message'} = '';
+
+ my $sid = to_int( $c->request->params->{'view_serien_id'} || 0 );
+ unless ( $sid ) {
+ $c->stash->{'template'} = 'error.tt2';
+ $c->stash->{'error'} = 'Keine oder ungültige Buchserien-Id übergeben.';
+ return 1;
+ }
+
+ my $sliste = get_serienliste( $c, 'get_books' => 1, 'serien_id' => $sid );
+ $c->log->debug( get_output_string( $K, "Erhaltene Serienliste: ", $sliste ) ) if $c->stash->{'debug_level'} >= 2;
+
+ unless ( $sliste and scalar( @$sliste ) ) {
+ $c->stash->{'template'} = 'error.tt2';
+ $c->stash->{'error'} = 'Zur übergebenen Buchserien-Id wurde nichts gefunden.';
+ return 1;
+ }
+
+ $c->stash->{'return_target'} = $c->session->{'return_target_view'} or $c->web_path("/serie/list");
+
+ $c->stash->{'serie'} = $sliste->[0];
+ $sliste = undef;
+ $c->stash->{'template'} = 'serie/view.tt2';
+ push @{$c->stash->{'cssfiles'}}, 'serie/view.css';
+
+}
+
+#-------------------------------------------------------
+
sub do_save_serie : Private {
my ( $self, $c ) = @_;
$Id$
$URL$
- Übergebene Struktur in [serien]:
+ Übergebene Struktur in [serie]:
- $serien = [
- };
+ $serie = {
+ 'id' => 1,
+ 'name' => 'Perry Rhodan',
+ 'descr' => 'Abenteuer des Weltraumspezis',
+ 'count_books' => 60,
+ 'books' => [
+ {
+ 'id' => 2,
+ 'serien_ord_num' => 60,
+ 'title' => 'Perry Rhodan - Die Cynos',
+ 'title_original' => undef,
+ 'untertitel' => undef,
+ 'bindungsart_id' => 1,
+ 'bindungsart' => 'Hartcover',
+ 'orts_id' => 4,
+ 'isbn' => undef,
+ 'verlags_id' => 2,
+ 'verlags_name' => 'Bertelsmann',
+ 'buch_nr' => '0820 4',
+ 'ausgabejahr' => '1997',
+ 'druckjahr' => '2007',
+ 'seiten' => 402,
+ 'preis' => 18,
+ 'waehrungs_id' => 1,
+ 'waehrungs_kuerzel' => '€',
+ 'waehrungs_name' => 'Euro',
+ 'umrechnung_in_euro' => 1,
+ 'ortsname' => 'Dachboden',
+ 'ort_beschreibung' => '',
+ 'ort_ist_statisch' => 'n',
+ 'autoren' => [ 'Verschiedene Autoren' ];
+ 'autor_ids' => [ 2 ];
+ },
+ {
+ 'id' => 22,
+ ...
+ },
+ };
-%]
[%- BLOCK book_entry -%]
-[% link_target = Catalyst.web_path( '/books/view', { 'return_target_form' => self_url, view_book_id => book.id, } ) -%]
-<a href="[% link_target %]">[% book.title | html %]</a>[% IF book.autoren.size %] ([% book.autoren.join( ', ' ) | html %])[% END %]
+[% link_target = Catalyst.web_path( '/books/view', { 'return_target_form' => self_url, view_book_id => b.id, } ) -%]
+<a href="[% link_target %]">[% b.title | html %]</a>[% IF b.autoren.size %] ([% b.autoren.join( ', ' ) | html %])[% END %]
[%- END -%]
-Anzeige Buchserien -->
+Anzeige einer Buchserie -->
<table class="ftable" cellspacing="0">
<tr>
- <th colspan="2" class="title">Autor '[%- autor.name | html -%]'</th>
+ <th colspan="2" class="title">Buchserie '[%- serie.name | html -%]'</th>
</tr><tr>
<td colspan="2" class="empty"></td>
</tr><tr>
- <th>Titel des Autors :</th>
- <td>[% autor.title | html %]</td>
+ <th>Name der Buchserie:</th>
+ <td>[% serie.name | html %]</td>
</tr><tr>
- <th>Vorname:</th>
- <td>[% autor.vorname | html %]</td>
+ <th>Beschreibung:</th>
+ <td>[% serie.descr | html %]</td>
</tr><tr>
- <th>Zweiter Vorname (oder Vatersname o.ä.):</th>
- <td>[% autor.mittelname | html %]</td>
- </tr><tr>
- <th>Nachname:</th>
- <td>[% autor.nachname | html %]</td>
- </tr><tr>
- <th>Namenssuffix (Jr. o.ä.):</th>
- <td>[% autor.name_suffix | html %]</td>
- </tr><tr>
- <th>Zusätzliche Angaben:</th>
- <td>[% autor.descr | html %]</td>
- </tr><tr>
- <th>Über den Autor:</th>
- <td>[% ForumCode.forumcode( autor.about ) %]</td>
+ <th>Anzahl der Bücher:</th>
+ <td>[% serie.count_books | html %]</td>
</tr><tr>
<th>Bücher:</th>
- <td>[% IF autor.books.size > 0 %][% IF autor.books.size > 1 %]<ul>[% FOR buch IN autor.books %]<li>[% PROCESS book_entry b=buch %]</li>
- [% END %]</ul>[% ELSE %][% PROCESS book_entry b=autor.books.0 %][% END %][% ELSE %]<i>keine</i>[% END %]</td>
+ <td>[% IF serie.books.size > 0 %]<ul>[% FOR buch IN serie.books %]
+ <li>[% PROCESS book_entry b=buch %]</li>
+ [% END %]</ul>[% ELSE %]<i>keine</i>[% END %]</td>
</table>
<div class="back">