word edit: latin language option for scientific names
[sheet.git] / writer.plp
index 493f74534b3f5961253b6b4fe224a4e5451363fc..256a074369a3c00c5754e8cdfa4a4de735dcc684 100644 (file)
@@ -71,6 +71,7 @@ my %lang = (
        en => ["\N{REGIONAL INDICATOR SYMBOL LETTER G}\N{REGIONAL INDICATOR SYMBOL LETTER B}", 'english'],
        eo => ['<span style="color:green">★</span>', 'esperanto'],
        ru => ["\N{REGIONAL INDICATOR SYMBOL LETTER R}\N{REGIONAL INDICATOR SYMBOL LETTER U}", 'русский'],
+       la => ["\N{PUSHPIN}", 'latin'],
 );
 my @wordcols = pairkeys
 my %wordcol = (
@@ -98,8 +99,20 @@ my %wordcol = (
        source  => {-label => 'Image'},
        thumb   => {-label => 'Convert options', -multiple => 1},
 );
-my ($find) = map {{id => $_}} $fields{id} || $Request || ();
 
+if (my $search = $fields{q}) {
+       my %filter = (form => {ilike => '%'.$search.'%'});
+       my $results = $db->select(word => '*', \%filter);
+       say '<h1>Search</h1><ul>';
+       printf("<li><small>%s</small> %s %s</li>\n",
+               $_->{id}, showlink($_->{form}, "/writer/$_->{id}"),
+               sprintf('<img src="/%s" style="height:3ex; width:auto" />', Shiar_Sheet::FormRow::imagepath($_ => 'thumb')) x defined $_->{thumb}
+       ) for $results->hashes;
+       say "</ul>\n";
+       exit;
+}
+
+my ($find) = map {{id => $_}} $fields{id} || $Request || ();
 my $row;
 if ($find) {
        $row = $db->select(word => '*', $find)->hash
@@ -160,6 +173,7 @@ elsif (defined $post{form}) {{
                                prio  => undef,
                        );
                        $subrow{wptitle} = $1 if $subrow{form} =~ s/\h*\[(.*)\]$//; # [Link] shorthand
+                       $subrow{alt} = [split m{/}, $1] if $subrow{form} =~ s{/(\S.*)}{}; # /alternates shorthand
                        $db->insert(word => \%subrow);
                        delete $fields{$field};
                }
@@ -207,7 +221,7 @@ elsif (defined $post{form}) {{
                                'convert',
                                $imgpath,
                                -delete => '1--1', -background => 'white',
-                               -gravity => @cmds ? 'northwest' : 'center',
+                               -gravity => defined $row->{thumb} ? 'northwest' : 'center',
                                @cmds,
                                -resize => "$xyres^", -extent => $xyres,
                                '-strip', -quality => '60%', -interlace => 'plane',