package PictureGalleryObject @ISA = qw() sub new my ($module) = @_; # $this->SUPER::new( return $this; sub DESTROY my $this = shift; $this->SUPER::DESTROY( sub Configure my ($this, $modulename, $privilege, $privilegemakephotoalbum, $rootpath, $keyword, $picturemask, $picturethumbnailwidth, #$imagesourcetemplate, $thumbnaillinktemplate, $pPermittedDirs, $pBrowseFiles, $pDenyFiles, $pSubstitutionSource, $pSubstitutionTarget, $pURLSubstitutionList, $pURLReverseSubstitutionList, $showdate, $showdirectory, $showparentdirectory, $showfilesize, $targetpage, %hash) = @_; sub GetParameterHash my ($this, $App, $pParams) = @_; return {}; sub IsOpen my ($this, $App, $pParams, $IsPrint) = @_; return if($this->{RootPath} eq ''); return $ret; sub ShowMenu my ($this, $App, $pParams, $ProgramPath, $BaseOption) = @_; return 0; sub ShowPage my ($this, $App, $pParams, $Path, $pPrevFunc, $pPostFunc, %args) = @_; return if(!$this->IsOpen($App, $pParams, 0)); return; my $fmask = Utils::MakePath($pParams->{Path}, '*', '/', 0); #$App->print("fmask[$fmask]\n"); my @files = $App->GetFileList($pParams, $fmask, 1); #$App->print("nFiles: ", scalar @files, "\n"); my $MultiFunctionTableJScript = JSParams->new()->GetMultiFunctionalTableString('#TableTest3', sortList => '[[1,1]]', excludeColumns => '[2,3]'); my %MultiFunctionTableConfigByClass = ( id => 'TestTable3', class => 'tablesorter' ); # $pParams->{NextAction} = ''; # $pParams->{SubMenuFunction} = ''; #"ManageDownload::ShowSubMenu" if($pParams->{SubMenuFunction} ne ''); if($CanShowDirTreeLinkPrivilege) { #$App->print("Path[$pParams->{Path}] RootPath[$this->{RootPath}]\n"); my $link = $this->MakeDirTreeLink($App, $pParams, $pParams->{Path}); #$App->print("link[$link]\n"); Jcode::convert(\$link, $pParams->{WebCharCode}); $App->mlPrintRawHTML('en' => "

Browse [$link]

", 'jp' => "

[$link]を表示

"); } # 写真表示 if($MakePDFFirstPageImage) { $this->MakePDFFirstPageImage( $App, $pParams, $Path, %args, pFiles => \@files); @files = $App->GetFileList($pParams, Utils::MakePath($pParams->{Path}, '*', '/', 0), 1); } $this->MakeThumbnail( $App, $pParams, $Path, %args, pFiles => \@files) if($MakeThumbnail); $this->ShowPictureList( $App, $pParams, $Path, %args, pFiles => \@files); $this->ShowMakeArchiveLinks($App, $pParams, $Path, %args); # フォルダー・ファイルリスト表示 $this->SUPER::ShowPage($App, $pParams, $Path, $pPrevFunc, $pPostFunc, MultiFunctionTableJScript => $MultiFunctionTableJScript, pMultiFunctionTableConfig => \%MultiFunctionTableConfigByClass, ShowDirTreeLink => 0, pFilterFunc => sub { my ($this, $App, $pParams, $path) = @_; return 0 if($this->{ImageFilesRegExp} and $path =~ /$this->{ImageFilesRegExp}/i); return 1; sub PrintFileFunc my ($this, $App, $pParams, $path) = @_; sub ViewImage my ($this, $App, $pParams) = @_; return if(!$this->IsOpen($App, $pParams, 0)); sub MakePhotoAlbum my ($this, $App, $pParams) = @_; return if(!$this->IsOpen($App, $pParams, 0)); sub ShowMakeArchiveLinks my ($this, $App, $pParams) = @_; return if(!$this->IsOpen($App, $pParams, 0)); sub IsThumbnailFile my ($this, $fname) = @_; return 1 if($fname =~ /tiny-/i); return 1 if($fname =~ /small\.[a-z]+$/i); return 0; sub ExecuteCommand my ($this, $App, $pParams, $cmd, $UsePipe) = @_; return 0; return 1; return 1; return 0; return 1; sub MakePDFFirstPageImage my ($this, $App, $pParams, $Path, %args) = @_; return if(!$this->IsOpen($App, $pParams, 0)); return; return; return; return; return; sub MakeThumbnail my ($this, $App, $pParams, $Path, %args) = @_; return if(!$this->IsOpen($App, $pParams, 0)); return; return; return; sub ShowPictureList my ($this, $App, $pParams, $Path, %args) = @_; return if(!$this->IsOpen($App, $pParams, 0)); return; sub Download my ($this, $App, $pParams, $Path) = @_; sub MakeShowImageLink my ($this, $App, $pParams, $path, $label, %args) = @_; return $link; sub ShowImageHTML my ($this, $App, $pParams, $Path, $border, $width, %args) = @_; sub ShowImage my ($this, $App, $pParams, $Path) = @_; return if(!$this->IsOpen($App, $pParams, 0));