summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCranix <you@example.com>2013-03-27 19:34:27 -0400
committerCranix <you@example.com>2013-03-27 19:34:27 -0400
commit15412b11354431c6778efe9f69e78f608e75f159 (patch)
tree198c59a4e3719597b20ff6f13722d5b5debf3dd1
parentf2e4f434e252375d23f760eaa6954585364dc315 (diff)
downloadBiblioteka-15412b11354431c6778efe9f69e78f608e75f159.tar.gz
Biblioteka-15412b11354431c6778efe9f69e78f608e75f159.tar.bz2
Biblioteka-15412b11354431c6778efe9f69e78f608e75f159.zip
Do template dodano formularz do rezerwacji ksiazek.
Nalezy napisac mechanizm obslogujacy rezerwacje ksiazek.
-rw-r--r--TODO1
-rwxr-xr-xbin/app.pl25
-rw-r--r--bin/ksiazki.dbbin7168 -> 7168 bytes
-rwxr-xr-xtools/add_book.pl1
-rw-r--r--views/main_page.tt23
5 files changed, 38 insertions, 12 deletions
diff --git a/TODO b/TODO
index 7587763..68b9e7e 100644
--- a/TODO
+++ b/TODO
@@ -1,4 +1,3 @@
-1)Dodać obsługę informacji o tym, kto wypożyczył daną książkę
2)Dodać uwieżytelnianie
3)Dodać możliwość łączenia się po https
4)Zintegrować z LDAP'em
diff --git a/bin/app.pl b/bin/app.pl
index 7842b0f..e737be2 100755
--- a/bin/app.pl
+++ b/bin/app.pl
@@ -15,7 +15,6 @@ get '/' => sub
{
my $sth = $dbh->prepare("select * from ksiazki;") or die "Nie mozna spreparowac zapytania";
$sth->execute() or die "Nie mozna wykonac zapytania";
- #my $sth=$dbh->do("select * from ksiazki");
my @result;
(@result)=@{$sth->fetchall_arrayref} or die "blad przy pobieraniu danych";
@@ -29,16 +28,23 @@ get '/' => sub
get '/req/:book' => sub
{
- my $id=params->{book};
- my $sth;
-
- $sth=$dbh->prepare("select type from ksiazki where id=?") or die "Nie mozna spreparowac zapytania";
+ #TODO:Zamienic if'y na odpowiednie zapytania sql
+ my ($id,$who) = split (/,/,params->{book});
+ my $sth=$dbh->prepare("select can_borrow from ksiazki where id=?") or die "Nie mozna spreparowac zapytania";
$sth->execute($id) or die "Nie mozna wykonac";
my $type = $sth->fetchrow_array or die "Nie mozna pobrac danych";
if ($type == 1)
{
- $sth = $dbh->prepare("update ksiazki set state=not state where id=?") or die "Nie mozna spreparowac zapytania";
- $sth->execute($id) or die "Nie mozna wykonac zapytania";
+ my $sth=$dbh->prepare("select who from ksiazki where id=?") or die "Nie mozna spreparowac zapytania";
+ $sth->execute($id) or die "Nie mozna wykonac";
+ my $who_from_base = $sth->fetchrow_array or die "Nie mozna pobrac danych";
+
+ if ($who_from_base ne 'nikt')
+ {
+ $who='nikt'
+ }
+ $sth = $dbh->prepare("update ksiazki set state=not state,who=? where id=?") or die "Nie mozna spreparowac zapytania";
+ $sth->execute($who,$id) or die "Nie mozna wykonac zapytania";
return 0;
}
elsif ($type == 0)
@@ -51,5 +57,10 @@ get '/req/:book' => sub
}
};
+post '/res' => sub #do zrobienia, rezerwacja
+{
+ #return params->{book_id};
+ return "Not implemented yet";
+};
dance;
diff --git a/bin/ksiazki.db b/bin/ksiazki.db
index a370402..442e7ff 100644
--- a/bin/ksiazki.db
+++ b/bin/ksiazki.db
Binary files differ
diff --git a/tools/add_book.pl b/tools/add_book.pl
index a7364db..8eda61c 100755
--- a/tools/add_book.pl
+++ b/tools/add_book.pl
@@ -1,4 +1,5 @@
#!/usr/bin/perl -w
+#Skrypt nie dokonczony, nie dziala
use warnings;
use strict;
diff --git a/views/main_page.tt b/views/main_page.tt
index 6b45fac..c7ad6b0 100644
--- a/views/main_page.tt
+++ b/views/main_page.tt
@@ -1,17 +1,26 @@
<html>
<body>
% (my @tab) = @{$_[0]->{'table'}};
-
+ % my $pool_id=0;
+ % my $pool_isbn=1;
+ % my $pool_title=2;
+ % my $pool_author=3;
+ % my $pool_owner=4;
+ % my $pool_state=5;
+ % my $pool_who=6;
+ % my $pool_can_borrow=7;
+ % my $pool_reserved=8;
+ % my $pool_comment=9;
<table border=7>
- <tr><td>id</td><td>isbn</td><td>tytul</td><td>autor</td><td>wlasiciciel</td><td>jest?</td><td>mozna brac?</td></tr>
+ <tr><td>id</td><td>isbn</td><td>tytul</td><td>autor</td><td>wlasiciciel</td><td>jest?</td><td>kto?</td><td>mozna brac?</td><td>zarezerwowana?</td><td>komentarz</td></tr>
<tr>
% for (my $i=0;$i<$#tab+1;$i++)
% {
- % for (my $ii=0;$ii<7;$ii++) #Jest 7 pol w kazdym rekordzie
+ % for (my $ii=0;$ii<9;$ii++) #Jest 9 pol w kazdym rekordzie
% {
- % if ($ii==5 || $ii==6)
+ % if ($ii==$pool_state || $ii==$pool_can_borrow || $ii==$pool_reserved)
% {
% if ($tab[$i][$ii]==1)
% {
@@ -31,5 +40,11 @@
</table>
+ <br>
+ Rezerwacja ksiazek. Podaj id ksiazki do zarezerwowania. <br>
+ <form action="http://i.am-a.cat:3000/res" method="post">
+ <input type="text" name="book_id">
+ <input type="submit" value="zarezerwuj">
+ </form>
</body>
</html>