added autocomplete="off"
[koha.git] / C4 / Branch.pm
index 34f716a..7bd0326 100644 (file)
@@ -17,9 +17,9 @@ package C4::Branch;
 
 
 use strict;
+#use warnings; FIXME - Bug 2505
 require Exporter;
 use C4::Context;
-use C4::Koha;
 
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
 
@@ -44,6 +44,8 @@ BEGIN {
                &ModBranchCategoryInfo
                &DelBranch
                &DelBranchCategory
+               &CheckCategoryUnique
+               &mybranch
        );
        @EXPORT_OK = qw( &onlymine &mybranch get_branch_code_from_name );
 }
@@ -66,11 +68,12 @@ The functions in this module deal with branches.
 
   $branches = &GetBranches();
 
-  Returns informations about ALL branches, IndependantBranches Insensitive.
-  GetBranchInfo() returns the same information without the problems of this function 
-  (namespace collision, mainly).
-  Create a branch selector with the following code.
-  
+Returns informations about ALL branches, IndependantBranches Insensitive.
+GetBranchInfo() returns the same information without the problems of this function 
+(namespace collision, mainly).
+
+Create a branch selector with the following code.
+
 =head3 in PERL SCRIPT
 
     my $branches = GetBranches;
@@ -156,11 +159,10 @@ sub GetBranchesLoop (;$$) {  # since this is what most pages want anyway
     my $onlymine = @_ ? shift : onlymine();
     my $branches = GetBranches($onlymine);
     my @loop;
-    my $searchMyLibraryFirst = C4::Context->preference("SearchMyLibraryFirst");;
-    foreach (sort { $branches->{$a}->{branchname} cmp $branches->{$b}->{branchname} } keys %$branches) {
+    foreach ( sort { uc($branches->{$a}->{branchname}) cmp uc($branches->{$b}->{branchname}) } keys %$branches ) {
         push @loop, {
             value => $_,
-            selected => (($_ eq $branch) && $searchMyLibraryFirst ) ? 1 : 0, 
+            selected => ($_ eq $branch) ? 1 : 0, 
             branchname => $branches->{$_}->{branchname},
         };
     }
@@ -200,17 +202,18 @@ sub ModBranch {
         my $query  = "
             INSERT INTO branches
             (branchcode,branchname,branchaddress1,
-            branchaddress2,branchaddress3,branchzip,branchcity,
+            branchaddress2,branchaddress3,branchzip,branchcity,branchstate,
             branchcountry,branchphone,branchfax,branchemail,
             branchurl,branchip,branchprinter,branchnotes)
-            VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
+            VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
         ";
         my $sth    = $dbh->prepare($query);
         $sth->execute(
             $data->{'branchcode'},       $data->{'branchname'},
             $data->{'branchaddress1'},   $data->{'branchaddress2'},
             $data->{'branchaddress3'},   $data->{'branchzip'},
-            $data->{'branchcity'},       $data->{'branchcountry'},
+            $data->{'branchcity'},       $data->{'branchstate'},
+            $data->{'branchcountry'},
             $data->{'branchphone'},      $data->{'branchfax'},
             $data->{'branchemail'},      $data->{'branchurl'},
             $data->{'branchip'},         $data->{'branchprinter'},
@@ -222,7 +225,7 @@ sub ModBranch {
             UPDATE branches
             SET branchname=?,branchaddress1=?,
                 branchaddress2=?,branchaddress3=?,branchzip=?,
-                branchcity=?,branchcountry=?,branchphone=?,
+                branchcity=?,branchstate=?,branchcountry=?,branchphone=?,
                 branchfax=?,branchemail=?,branchurl=?,branchip=?,
                 branchprinter=?,branchnotes=?
             WHERE branchcode=?
@@ -232,7 +235,8 @@ sub ModBranch {
             $data->{'branchname'},
             $data->{'branchaddress1'},   $data->{'branchaddress2'},
             $data->{'branchaddress3'},   $data->{'branchzip'},
-            $data->{'branchcity'},       $data->{'branchcountry'},
+            $data->{'branchcity'},       $data->{'branchstate'},       
+            $data->{'branchcountry'},
             $data->{'branchphone'},      $data->{'branchfax'},
             $data->{'branchemail'},      $data->{'branchurl'},
             $data->{'branchip'},         $data->{'branchprinter'},
@@ -403,34 +407,6 @@ sub GetBranchDetail {
     return $sth->fetchrow_hashref();
 }
 
-=head2 get_branchinfos_of
-
-  my $branchinfos_of = get_branchinfos_of(@branchcodes);
-
-Associates a list of branchcodes to the information of the branch, taken in
-branches table.
-
-Returns a href where keys are branchcodes and values are href where keys are
-branch information key.
-
-  print 'branchname is ', $branchinfos_of->{$code}->{branchname};
-
-=cut
-
-sub get_branchinfos_of {
-    my @branchcodes = @_;
-
-    my $query = '
-    SELECT branchcode,
-       branchname
-    FROM branches
-    WHERE branchcode IN ('
-      . join( ',', map( { "'" . $_ . "'" } @branchcodes ) ) . ')
-';
-    return C4::Koha::get_infos_of( $query, 'branchcode' );
-}
-
-
 =head2 GetBranchesInCategory
 
   my $branches = GetBranchesInCategory($categorycode);
@@ -526,20 +502,42 @@ sets the data from the editbranch form, and writes to the database...
 sub ModBranchCategoryInfo {
     my ($data) = @_;
     my $dbh    = C4::Context->dbh;
-       if ($data->{'add'}){
-               # we are doing an insert
-               my $sth   = $dbh->prepare("INSERT INTO branchcategories (categorycode,categoryname,codedescription,categorytype) VALUES (?,?,?,?)");
-               $sth->execute(uc( $data->{'categorycode'} ),$data->{'categoryname'}, $data->{'codedescription'},$data->{'categorytype'} );
-               $sth->finish();         
-       }
-       else {
-               # modifying
-               my $sth = $dbh->prepare("UPDATE branchcategories SET categoryname=?,codedescription=?,categorytype=? WHERE categorycode=?");
-               $sth->execute($data->{'categoryname'}, $data->{'codedescription'},$data->{'categorytype'},uc( $data->{'categorycode'} ) );
-               $sth->finish();
-       }
+    if ($data->{'add'}){
+       # we are doing an insert
+       my $sth   = $dbh->prepare("INSERT INTO branchcategories (categorycode,categoryname,codedescription,categorytype) VALUES (?,?,?,?)");
+       $sth->execute(uc( $data->{'categorycode'} ),$data->{'categoryname'}, $data->{'codedescription'},$data->{'categorytype'} );
+       $sth->finish();         
+    }
+    else {
+       # modifying
+       my $sth = $dbh->prepare("UPDATE branchcategories SET categoryname=?,codedescription=?,categorytype=? WHERE categorycode=?");
+       $sth->execute($data->{'categoryname'}, $data->{'codedescription'},$data->{'categorytype'},uc( $data->{'categorycode'} ) );
+       $sth->finish();
+    }
+}
+
+=head2 CheckCategoryUnique
+
+if (CheckCategoryUnique($categorycode)){
+  # do something
 }
 
+=cut
+
+sub CheckCategoryUnique {
+    my $categorycode = shift;
+    my $dbh    = C4::Context->dbh;
+    my $sth = $dbh->prepare("SELECT categorycode FROM branchcategories WHERE categorycode = ?");
+    $sth->execute(uc( $categorycode) );
+    if (my $data = $sth->fetchrow_hashref){
+       return 0;
+    }
+    else {
+       return 1;
+    }
+}
+
+    
 =head2 DeleteBranchCategory
 
 DeleteBranchCategory($categorycode);
@@ -587,6 +585,6 @@ __END__
 
 =head1 AUTHOR
 
-Koha Developement team <info@koha.org>
+Koha Development Team <http://koha-community.org/>
 
 =cut