Ignore:
Timestamp:
May 5, 2009, 8:14:43 PM (15 years ago)
Author:
ronosman
Message:

Feature 987 added: use filename or prefix to create a default photo name.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extras/pLoader/trunk/src/Uploader/ImageList.pm

    r3241 r3267  
    3030use Digest::MD5::File qw/file_md5_hex md5_hex/;
    3131use Encode qw/encode decode is_utf8/;
     32use Wx::Locale qw/:default/;
    3233
    3334# this class implements a collection of image files with associated data
     
    6263                progress_msg
    6364                last_error_msg
     65                default_photo_name
     66                default_photo_name_method
    6467                default_name_prefix
    6568                SetNewFilesViewerRefreshCallback
     
    9194
    9295sub Init {
    93     my ( $self ) = @_; 
     96    my ( $self ) = @_;
     97   
     98   
    9499}
    95100
     
    310315    my $image;
    311316    if ( !exists $self->image_sums->{$sum} ){
     317print "_add_image ", $file, "\n";
    312318        # append to image list
    313319        $image = Uploader::Image->new(
    314320        {
    315                 file              => $_,
     321                file              => $file,
    316322                file_sum          => $sum,
    317                 site_name         => sprintf(
    318                                          "%s %s",
    319                                          $self->default_name_prefix,
    320                                          $i,
    321                                      ),
     323                site_name         => $self->_default_photo_name($file, $info, $i),
    322324                site_author       => $self->author,
    323325                exif_metadata     => $self->_select_exif_data($info),
     
    336338
    337339       
    338     #$self->images->[$i] = $image ;
    339340    $self->sums->[$i] = $sum ;
    340341
    341342    $is_new_image;
     343}
     344
     345
     346sub _default_photo_name {
     347    my ( $self, $file, $info, $i ) = @_;
     348   
     349    my $name;
     350    my $create_date = $info->{CreateDate};
     351    my $ext;
     352    my ( $vol, $path, $filename ) = File::Spec->splitpath($file);
     353    ( $filename, $ext ) = split /\.\w+$/, $filename;
     354   
     355    my ( $yyyy, $mm, $dd, $hh, $mi, $ss ) = split /[:\s]/, $create_date ;
     356 
     357    my $chrono = join('', $yyyy, $mm, $dd);
     358    if(gettext('Prefix') eq $self->default_photo_name){
     359        $name = $self->default_name_prefix
     360    }
     361    elsif(gettext('File name') eq $self->default_photo_name){
     362        $name = $filename
     363    }
     364    elsif(gettext('File path and name') eq $self->default_photo_name){
     365        $name = sprintf(
     366            "%s",
     367            File::Spec->catfile($path, $filename),
     368        )       
     369    }   
     370    elsif(gettext('Prefix + rank number') eq $self->default_photo_name){
     371        $name = sprintf(
     372            "%s%s",
     373            $self->default_name_prefix,
     374            1+$i,
     375        )       
     376    }   
     377    elsif(gettext('Rank number + prefix') eq $self->default_photo_name){
     378        $name = sprintf(
     379            "%s%s",
     380            1+$i,
     381            $self->default_name_prefix,
     382        )       
     383    }   
     384    elsif(gettext('Prefix + create date chrono') eq $self->default_photo_name){
     385        $name = sprintf(
     386            "%s%s",
     387            $self->default_name_prefix,
     388            $chrono,
     389        )       
     390    }   
     391    elsif(gettext('Create date chrono + prefix') eq $self->default_photo_name){
     392        $name = sprintf(
     393            "%s%s",
     394            $chrono,
     395            $self->default_name_prefix,
     396        )       
     397    }   
     398
     399    $name;     
    342400}
    343401
     
    764822                userdata_dir
    765823                progress_msg
     824                default_photo_name
    766825                default_name_prefix
    767826                upload_high
Note: See TracChangeset for help on using the changeset viewer.