return $self;
}
-sub artist
+sub set
{
- my $self=shift;
- return $self->sanitise($self->stripslashes($self->{audiofile}->artist()));
-}
-
-sub album
-{
- my $self=shift;
- return $self->sanitise($self->stripslashes($self->{audiofile}->album()));
+ my ($self, $thing, $value)=@_;
+ if($value)
+ {
+ $value=$self->sanitise($self->stripslashes($value));
+ $self->{audiofile}->$thing($value);
+ }
+ else
+ {
+ $value=$self->sanitise($self->stripslashes($self->{audiofile}->$thing()));
+ }
+ return $value;
}
-sub audiotype
-{
- my $self=shift;
- return $self->sanitise($self->stripslashes($self->{audiofile}->audiotype()));
-}
+sub artist { return(shift->set("artist", @_)); }
+sub album { return(shift->set("album", @_)); }
+sub track { return(shift->set("track", @_)); }
+sub tracknum { return(shift->set("tracknum", @_)); }
+sub v1genre { return(shift->set("v1genre", @_)); }
+sub comment { return(shift->set("comment", @_)); }
+sub audiotype { return(shift->set("audiotype")); }
+sub haspic { return(shift->set("haspic")); }
-sub haspic
-{
- return undef; # FIXME
-# my $self=shift;
-# return $self->{audiofile}->haspic();
-}
+sub delete_artist { shift->{audiofile}->delete_artist(); }
+sub delete_album { shift->{audiofile}->delete_album(); }
+sub delete_track { shift->{audiofile}->delete_track(); }
+sub delete_tracknum { shift->{audiofile}->delete_tracknum(); }
+sub delete_year { shift->{audiofile}->delete_year(); }
+sub delete_v1genre { shift->{audiofile}->delete_v1genre(); }
+sub delete_comment { shift->{audiofile}->delete_comment(); }
+sub delete_all { shift->{audiofile}->delete_all(); }
+sub delete_genre { shift->{audiofile}->delete_genre(); }
+sub delete_tags { shift->{audiofile}->delete_tags(); }
-sub v1genre
+sub year
{
- my $self=shift;
- return $self->sanitise($self->stripslashes($self->{audiofile}->v1genre()));
+ my ($self, $year)=@_;
+ if($year)
+ {
+ $year=$self->format_year($year);
+ $self->{audiofile}->year($year);
+ }
+ else
+ {
+ $year=$self->{audiofile}->year();
+ }
+ return $year;
}
-sub year
+sub format_year
{
- my $self=shift;
- my $year=$self->sanitise($self->stripslashes($self->{audiofile}->year()));
- if(defined($year) && $year =~/(\d{4})/)
+ my ($self, $year)=@_;
+ if($year)
{
- $year=$1;
+ $year=$self->sanitise($self->stripslashes($year));
+ if(defined($year) && $year =~/(\d{4})/)
+ {
+ $year=$1;
+ }
}
return $year;
}
+sub add_tags
+{
+ my($self, $tags)=@_;
+ die("FIXME: implement add_tags()\n");
+}
+
sub tags
{
my $self=shift;
return @outtags;
}
+sub write
+{
+ shift->{audiofile}->write();
+}
+
sub sanitise
{
my ($self, $text)=@_;