X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=misc%2Fcronjobs%2Fcart_to_shelf.pl;h=d190ca41e71e2a0b27c20005f5adb20c241c3eea;hb=a8c5497b8da7de25b7c4787ee5540e4e1b48704d;hp=5b2b7436a6332ec1dfcbc9307746af87e6a4d34f;hpb=e40e11ab0c1b23f3c5581d2b2aac44c04f8232b4;p=koha_fer diff --git a/misc/cronjobs/cart_to_shelf.pl b/misc/cronjobs/cart_to_shelf.pl index 5b2b7436a6..d190ca41e7 100755 --- a/misc/cronjobs/cart_to_shelf.pl +++ b/misc/cronjobs/cart_to_shelf.pl @@ -13,9 +13,9 @@ # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # -# You should have received a copy of the GNU General Public License along with -# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, -# Suite 330, Boston, MA 02111-1307 USA +# You should have received a copy of the GNU General Public License along +# with Koha; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. #----------------------------------- =head1 NAME @@ -28,6 +28,8 @@ cart_to_shelf.pl cron script to set items with location of CART to original she use strict; use warnings; +use C4::Items qw/ CartToShelf /; + BEGIN { # find Koha's Perl modules @@ -43,7 +45,7 @@ my $hours = 0; GetOptions( 'h|hours=s' => \$hours, ); my $usage = << 'ENDUSAGE'; -longoverdue.pl : This cron script will set any item of the location CART ( Shelving Cart ) to it's original shelving location +cart_to_shelf.pl: This cron script will set any item of the location CART ( Shelving Cart ) to it's original shelving location after the given numer of hours has passed. This script takes the following parameters : @@ -51,7 +53,7 @@ This script takes the following parameters : --hours | -h The number of hours that need to pass before the location is updated. examples : - $PERL5LIB/misc/cronjobs/cart_to_shelf.pl --hours 24 + {Koha script directory}/cronjobs/cart_to_shelf.pl --hours 24 Would make any item that has a location of CART for more than 24 hours change to it's original shelving location. ENDUSAGE @@ -61,9 +63,9 @@ unless ($hours) { die "ERROR: No --hours (-h) option defined"; } -my $query = -"UPDATE items SET location = permanent_location WHERE location = 'CART' AND TIMESTAMPDIFF(HOUR, items.timestamp, NOW() ) > ?"; - -my $dbh = C4::Context->dbh; -my $sth = $dbh->prepare($query); +my $query = "SELECT itemnumber FROM items WHERE location = 'CART' AND TIMESTAMPDIFF(HOUR, items.timestamp, NOW() ) > ?"; +my $sth = C4::Context->dbh->prepare($query); $sth->execute($hours); +while (my ($itemnumber) = $sth->fetchrow_array) { + CartToShelf($itemnumber); +}