/
create_new_keyword.cgi
executable file
·60 lines (51 loc) · 1.53 KB
/
create_new_keyword.cgi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#!/opt/local/bin/perl
use warnings;
use strict;
use lib "./lib";
use CGI;
use CGI::Carp qw(fatalsToBrowser);
use HTML::Template;
use Template;
use DateTime;
use HTML::FillInForm;
use Perl6::Say;
use Keyword;
use Text::Hatena;
use Data::Dumper;
use DateTime::Format::MySQL;
use Sidebar;
use Model;
my $query = CGI->new;
my @params = $query->param;
my $param = { keywords => Sidebar->recent_keywords };
my $template = new Template();
my $output = "";
print $query->header( -charset => "utf-8" );
if ( $query->param("keyword") && $query->param("content") )
{ # 完了した場合
if ( my $keyword =
Keyword->retrieve( keyword => $query->param("keyword") ) )
{ # すでに登録してあった
Model->update( $keyword, $query->param("content") );
}
else {
Model->update( $keyword, $query->param("content") );
}
${ %{$param} }{"keyword"} = $query->param("keyword");
${ %{$param} }{"content"} = $query->param("content");
}
elsif ( defined( $query->param("keyword") ) ) { # 新規登録にきた場合
if ( my $keyword =
Keyword->retrieve( keyword => $query->param("keyword") ) )
{ # すでに登録してあった
${ %{$param} }{"keyword"} = $query->param("keyword");
${ %{$param} }{"content"} = $keyword->{content};
}
else { # まだ登録はしてなかった
${ %{$param} }{"keyword"} = $query->param("keyword");
${ %{$param} }{"content"} = "";
}
}
$template->process( 'create_new_keyword.tt', $param, \$output );
print $output;
exit;