diff --git a/src/main/java/local/epul4a/fotosharing/controller/PhotoController.java b/src/main/java/local/epul4a/fotosharing/controller/PhotoController.java index e4c7abd..1fab429 100644 --- a/src/main/java/local/epul4a/fotosharing/controller/PhotoController.java +++ b/src/main/java/local/epul4a/fotosharing/controller/PhotoController.java @@ -85,6 +85,12 @@ public class PhotoController { return "mes-photos"; } + @GetMapping("/galerie") + public String galerie(Model model) { + model.addAttribute("photos", photoService.listPublicPhotos()); + return "galerie"; + } + } diff --git a/src/main/java/local/epul4a/fotosharing/repository/PhotoRepository.java b/src/main/java/local/epul4a/fotosharing/repository/PhotoRepository.java index c2f264c..6fa15df 100644 --- a/src/main/java/local/epul4a/fotosharing/repository/PhotoRepository.java +++ b/src/main/java/local/epul4a/fotosharing/repository/PhotoRepository.java @@ -5,6 +5,6 @@ import org.springframework.data.jpa.repository.JpaRepository; import java.util.List; public interface PhotoRepository extends JpaRepository { - List findByProprietaire_Email(String email); + List findByVisibilite(Photo.Visibilite visibilite); } \ No newline at end of file diff --git a/src/main/java/local/epul4a/fotosharing/security/SecurityConfig.java b/src/main/java/local/epul4a/fotosharing/security/SecurityConfig.java index 0cefae8..24174e9 100644 --- a/src/main/java/local/epul4a/fotosharing/security/SecurityConfig.java +++ b/src/main/java/local/epul4a/fotosharing/security/SecurityConfig.java @@ -39,7 +39,7 @@ public class SecurityConfig { http .userDetailsService(customUserDetailsService) // Utiliser directement le UserDetailsService .authorizeHttpRequests(auth -> auth - .requestMatchers("/register", "/login", "/css/**", "/js/**").permitAll() + .requestMatchers("/register", "/login", "/css/**", "/js/**", "/photo/*/raw", "/galerie").permitAll() .anyRequest().authenticated() ) .formLogin(form -> form diff --git a/src/main/java/local/epul4a/fotosharing/service/PhotoService.java b/src/main/java/local/epul4a/fotosharing/service/PhotoService.java index 442553b..e323662 100644 --- a/src/main/java/local/epul4a/fotosharing/service/PhotoService.java +++ b/src/main/java/local/epul4a/fotosharing/service/PhotoService.java @@ -10,5 +10,6 @@ public interface PhotoService { Photo store(MultipartFile file, String visibilite, String ownerEmail) throws IOException; Path loadAsPath(String uuidFile); List listByOwner(String email); + List listPublicPhotos(); } diff --git a/src/main/java/local/epul4a/fotosharing/service/impl/PhotoServiceImpl.java b/src/main/java/local/epul4a/fotosharing/service/impl/PhotoServiceImpl.java index b2d6b96..41463b2 100644 --- a/src/main/java/local/epul4a/fotosharing/service/impl/PhotoServiceImpl.java +++ b/src/main/java/local/epul4a/fotosharing/service/impl/PhotoServiceImpl.java @@ -64,4 +64,9 @@ public class PhotoServiceImpl implements PhotoService { public List listByOwner(String email) { return photoRepository.findByProprietaire_Email(email); } + + @Override + public List listPublicPhotos() { + return photoRepository.findByVisibilite(Photo.Visibilite.PUBLIC); + } } diff --git a/src/main/resources/templates/galerie.html b/src/main/resources/templates/galerie.html new file mode 100644 index 0000000..c1cf7ad --- /dev/null +++ b/src/main/resources/templates/galerie.html @@ -0,0 +1,17 @@ + + +Galerie + +

Galerie publique

+ +

Accueil

+ +
    +
  • + nom + — + Voir +
  • +
+ + diff --git a/src/main/resources/templates/home.html b/src/main/resources/templates/home.html index f39742e..a5135cc 100644 --- a/src/main/resources/templates/home.html +++ b/src/main/resources/templates/home.html @@ -7,6 +7,7 @@

Bienvenue sur FotoSharing

Uploader une photo

Voir mes photos

+

Voir la galerie publique

+

Galerie publique

diff --git a/src/main/resources/templates/upload.html b/src/main/resources/templates/upload.html index 09153da..0dd0b88 100644 --- a/src/main/resources/templates/upload.html +++ b/src/main/resources/templates/upload.html @@ -17,6 +17,7 @@
+

Galerie publique

diff --git a/target/classes/local/epul4a/fotosharing/controller/PhotoController.class b/target/classes/local/epul4a/fotosharing/controller/PhotoController.class index 8c50fab..d703464 100644 Binary files a/target/classes/local/epul4a/fotosharing/controller/PhotoController.class and b/target/classes/local/epul4a/fotosharing/controller/PhotoController.class differ diff --git a/target/classes/local/epul4a/fotosharing/repository/PhotoRepository.class b/target/classes/local/epul4a/fotosharing/repository/PhotoRepository.class index 8f9fc0b..2bcfddf 100644 Binary files a/target/classes/local/epul4a/fotosharing/repository/PhotoRepository.class and b/target/classes/local/epul4a/fotosharing/repository/PhotoRepository.class differ diff --git a/target/classes/local/epul4a/fotosharing/security/SecurityConfig.class b/target/classes/local/epul4a/fotosharing/security/SecurityConfig.class index 410a6e2..2c8357c 100644 Binary files a/target/classes/local/epul4a/fotosharing/security/SecurityConfig.class and b/target/classes/local/epul4a/fotosharing/security/SecurityConfig.class differ diff --git a/target/classes/local/epul4a/fotosharing/service/PhotoService.class b/target/classes/local/epul4a/fotosharing/service/PhotoService.class index 2fcc52b..1e58709 100644 Binary files a/target/classes/local/epul4a/fotosharing/service/PhotoService.class and b/target/classes/local/epul4a/fotosharing/service/PhotoService.class differ diff --git a/target/classes/local/epul4a/fotosharing/service/impl/PhotoServiceImpl.class b/target/classes/local/epul4a/fotosharing/service/impl/PhotoServiceImpl.class index 45b5d27..fdb9a56 100644 Binary files a/target/classes/local/epul4a/fotosharing/service/impl/PhotoServiceImpl.class and b/target/classes/local/epul4a/fotosharing/service/impl/PhotoServiceImpl.class differ diff --git a/target/classes/templates/galerie.html b/target/classes/templates/galerie.html new file mode 100644 index 0000000..c1cf7ad --- /dev/null +++ b/target/classes/templates/galerie.html @@ -0,0 +1,17 @@ + + +Galerie + +

Galerie publique

+ +

Accueil

+ +
    +
  • + nom + — + Voir +
  • +
+ + diff --git a/target/classes/templates/home.html b/target/classes/templates/home.html index f39742e..a5135cc 100644 --- a/target/classes/templates/home.html +++ b/target/classes/templates/home.html @@ -7,6 +7,7 @@

Bienvenue sur FotoSharing

Uploader une photo

Voir mes photos

+

Voir la galerie publique

+

Galerie publique

diff --git a/target/classes/templates/upload.html b/target/classes/templates/upload.html index 09153da..0dd0b88 100644 --- a/target/classes/templates/upload.html +++ b/target/classes/templates/upload.html @@ -17,6 +17,7 @@
+

Galerie publique