| 222 | | my ($self, %args) = @_; |
| 223 | | |
| 224 | | my %criteria = (ignore_case => 1); |
| 225 | | |
| 226 | | if ($args{days}) |
| 227 | | { |
| 228 | | $criteria{days} = $args{days}; |
| 229 | | } |
| 230 | | else |
| 231 | | { |
| 232 | | $criteria{last_n_changes} = $args{items} || 15; |
| 233 | | } |
| 234 | | |
| 235 | | if ($args{ignore_minor_edits}) |
| 236 | | { |
| 237 | | $criteria{metadata_wasnt} = { major_change => 0 }; |
| 238 | | } |
| 239 | | |
| 240 | | if ($args{filter_on_metadata}) |
| 241 | | { |
| 242 | | $criteria{metadata_was} = $args{filter_on_metadata}; |
| 243 | | } |
| 244 | | |
| 245 | | my @changes = $self->{wiki}->list_recent_changes(%criteria); |
| 246 | | |
| 247 | | if ($changes[0]->{last_modified}) |
| 248 | | { |
| 249 | | my $time = Time::Piece->strptime( $changes[0]->{last_modified}, $self->{timestamp_fmt} ); |
| 250 | | |
| 251 | | my $utc_offset = $self->{utc_offset}; |
| 252 | | |
| 253 | | return $time->strftime( "%Y-%m-%dT%H:%M:%S$utc_offset" ); |
| 254 | | } |
| 255 | | else |
| 256 | | { |
| 257 | | return '1970-01-01T00:00:00+0000'; |
| 258 | | } |
| | 223 | my ($self, $oldest_node) = @_; |
| | 224 | |
| | 225 | if ($oldest_node->{last_modified}) |
| | 226 | { |
| | 227 | my $time = Time::Piece->strptime( $oldest_node->{last_modified}, $self->{timestamp_fmt} ); |
| | 228 | |
| | 229 | my $utc_offset = $self->{utc_offset}; |
| | 230 | |
| | 231 | return $time->strftime( "%Y-%m-%dT%H:%M:%S$utc_offset" ); |
| | 232 | } |
| | 233 | else |
| | 234 | { |
| | 235 | return '1970-01-01T00:00:00+0000'; |
| | 236 | } |