#!/usr/bin/perl

BEGIN {
        unshift(@INC,($ENV{'POPHOME'}||'@POPHOME@').'/lib')
                        unless $ENV{'PERL5LIB'} or $ENV{'TESTING'};
      }

use utf8;
use strict;
use warnings;

use Docushare qw(propget propset);
#use Data::Dumper;
use Fehler qw(ffehler report_fehler);
use Dbase::Help qw(Do DoFn);

my $id = DoFn("select id from nextid where name='docushare-keyword'");
die "BROKEN DB Need to set the ID\n" unless defined $id;

#propset($id,"getlastmodified","Wed, 10 Oct 2007 10:00:00 GMT");
#my $res = propget($id,"");
#print $res;
#exit(0);
#		my $res = propget($id,"");
#		print "$id: ".Dumper($res);
#		exit(0);

my $skip = 0;
while($skip < 10) {
	ffehler {
		my $res = propget($id,"keywords");
		$res="" unless defined $res;
		if(not defined $res or $res !~ /\bF-$id\b/) {
			if(defined $res) {
				$res = "F-$id $id $res"
			} else {
				$res = "F-$id $id";
			}
			propset($id,"keywords",$res);
			#print Dumper(propget($id,"keywords"));
		}
		$skip = 0;
	} sub {
		my $err = $_[0];
		if($err eq "Not Found") {
			$skip++;
		} else {
			print "DocuShare F-$id: ".$_[0]."\n";
		}
	}
} continue {
	$id++;
}
Do("update nextid set id=$id-$skip where name='docushare-keyword'");
