|
Revision 12336, 1.7 KB
(checked in by bayral, 20 months ago)
|
|
rename category to Albums
|
| Line | |
|---|
| 1 | using System; |
|---|
| 2 | using System.Collections.Generic; |
|---|
| 3 | using System.Linq; |
|---|
| 4 | using System.Text; |
|---|
| 5 | using System.IO; |
|---|
| 6 | using Com.Piwigo.Uploader.DTO; |
|---|
| 7 | |
|---|
| 8 | namespace Com.Piwigo.Uploader.Service |
|---|
| 9 | { |
|---|
| 10 | public class LoadFromDirectory : IService |
|---|
| 11 | { |
|---|
| 12 | string[] extensions = { ".jpeg", ".jpg" }; |
|---|
| 13 | |
|---|
| 14 | private LocalAlbum loadDirectory(String dirName, Int32? rootAlbumId) |
|---|
| 15 | { |
|---|
| 16 | DirectoryInfo dir = new DirectoryInfo(dirName); |
|---|
| 17 | LocalAlbum album = new LocalAlbum (){ LocalDir=dir.FullName, Name=dir.Name}; |
|---|
| 18 | album.MessageInfo = ""; |
|---|
| 19 | album.UpperCatId = rootAlbumId; |
|---|
| 20 | |
|---|
| 21 | // loading image data in album |
|---|
| 22 | album.LocalImages = new LocalImageList(); |
|---|
| 23 | foreach (string strfile in Directory.EnumerateFiles(dir.FullName, "*.*", SearchOption.TopDirectoryOnly) |
|---|
| 24 | .Where(s => extensions.Any(ext => ext == Path.GetExtension(s)))) |
|---|
| 25 | { |
|---|
| 26 | FileInfo fi = new FileInfo(strfile); |
|---|
| 27 | LocalImage img = new LocalImage(); |
|---|
| 28 | img.LocalFile = fi.FullName; |
|---|
| 29 | img.Name = fi.Name; |
|---|
| 30 | img.Author = ""; |
|---|
| 31 | img.AuthorComment = ""; |
|---|
| 32 | album.LocalImages.Add(img); |
|---|
| 33 | } |
|---|
| 34 | |
|---|
| 35 | album.SubAlbums = new LocalAlbumList(); |
|---|
| 36 | foreach (string strdir in Directory.EnumerateDirectories(dir.FullName)) |
|---|
| 37 | { |
|---|
| 38 | album.SubAlbums.Add(loadDirectory(strdir, null)); |
|---|
| 39 | } |
|---|
| 40 | |
|---|
| 41 | return album; |
|---|
| 42 | } |
|---|
| 43 | |
|---|
| 44 | public void runService() |
|---|
| 45 | { |
|---|
| 46 | ModelManager.Instance.lstAlbumLocaux.Add( |
|---|
| 47 | loadDirectory(ModelManager.Instance.directoryName, |
|---|
| 48 | null) |
|---|
| 49 | ); |
|---|
| 50 | } |
|---|
| 51 | } |
|---|
| 52 | } |
|---|