diff --git a/src/main/java/NTNU/IDATT1002/controllers/CreateAlbum.java b/src/main/java/NTNU/IDATT1002/controllers/CreateAlbum.java
index af559e4441975d6a0368fad3e8035e7b2c5b80bd..4e4cc2b8d3539d8deea2e4f7ce834286c84c1de5 100644
--- a/src/main/java/NTNU/IDATT1002/controllers/CreateAlbum.java
+++ b/src/main/java/NTNU/IDATT1002/controllers/CreateAlbum.java
@@ -2,29 +2,45 @@ package NTNU.IDATT1002.controllers;
 
 import NTNU.IDATT1002.App;
 import NTNU.IDATT1002.ApplicationState;
+import NTNU.IDATT1002.models.Album;
+import NTNU.IDATT1002.models.Image;
 import NTNU.IDATT1002.models.Tag;
 import NTNU.IDATT1002.models.User;
 import NTNU.IDATT1002.service.AlbumService;
+import NTNU.IDATT1002.service.ImageService;
 import NTNU.IDATT1002.service.TagService;
+import NTNU.IDATT1002.utils.ImageUtil;
 import javafx.event.ActionEvent;
+import javafx.fxml.Initializable;
+import javafx.geometry.Pos;
+import javafx.scene.Node;
 import javafx.scene.control.Button;
+import javafx.scene.control.CheckBox;
 import javafx.scene.control.TextArea;
 import javafx.scene.control.TextField;
 import javafx.scene.image.ImageView;
 import javafx.scene.input.MouseEvent;
 import javafx.scene.layout.GridPane;
+import javafx.scene.layout.HBox;
 import javafx.scene.layout.Pane;
+import javafx.scene.layout.VBox;
+import org.hibernate.boot.jaxb.internal.stax.HbmEventReader;
 
 import javax.persistence.EntityManager;
 import java.io.IOException;
+import java.net.URL;
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Optional;
+import java.util.ResourceBundle;
+import java.util.stream.Collectors;
 
 /**
  * Controls the buttons and changeable elements on create_album.fxml,
  * a page where you create albums
  * @version 1.0 22.03.2020
  */
-public class CreateAlbum {
+public class CreateAlbum implements Initializable {
     public TextField tbar_search;
     public ImageView tbar_logo;
     public Button tbar_explore;
@@ -39,12 +55,36 @@ public class CreateAlbum {
     public Button create_album_button;
     public Button tbar_albums;
     public Button tbar_searchBtn;
+    public VBox fileContainer;
 
     private AlbumService albumService;
+    private ImageService imageService;
 
     public CreateAlbum() {
         EntityManager entityManager = App.ex.getEntityManager();
         albumService = new AlbumService(entityManager);
+        imageService = new ImageService(entityManager);
+    }
+
+    @Override
+    public void initialize(URL url, ResourceBundle resourceBundle) {
+        List<Image> allImages = imageService.getImageFromUser(ApplicationState.getCurrentUser());
+        for (Image image : allImages){
+            javafx.scene.image.Image convertedImage = ImageUtil.convertToFXImage(image);
+            HBox container = new HBox();
+            container.setPrefWidth(450);
+            container.setAlignment(Pos.TOP_CENTER);
+            ImageView imageView = new ImageView();
+            imageView.setFitHeight(200);
+            imageView.setFitWidth(350);
+            imageView.setPickOnBounds(true);
+            imageView.setPreserveRatio(true);
+            imageView.setImage(convertedImage);
+            CheckBox checkBox = new CheckBox();
+            checkBox.setId(image.getId().toString());
+            container.getChildren().addAll(imageView, checkBox);
+            fileContainer.getChildren().add(container);
+        }
     }
 
     /**
@@ -106,17 +146,51 @@ public class CreateAlbum {
     }
 
     /**
-     * Create an empty album. The user will default to the currently logged in user.
-     *
+     * Method that creates album based on the user input and checked images
      * @param actionEvent
      */
-    public void createEmptyAlbum(ActionEvent actionEvent) {
+    public void createAlbum(ActionEvent actionEvent){
         String title =  album_title_field.getText();
         String description = album_desc_field.getText();
         String tags = album_tag_field.getText();
         List<Tag> tagsToAdd = TagService.getTagsFromString(tags);
         User user = ApplicationState.getCurrentUser();
 
-        albumService.createEmptyAlbum(title, description, user, tagsToAdd);
+        List<Node> imageContainers = new ArrayList<>(fileContainer.getChildren());
+        List<String> checkedImagesId = new ArrayList<>();
+        //Each image and checkbox has an hbox container
+        imageContainers.forEach(hbox ->
+                ((HBox) hbox).getChildren().stream()
+                        //Filter children that is a checked checkbox
+                        .filter(child -> child instanceof CheckBox && ((CheckBox) child).isSelected())
+                        //Adds all checked image id
+                        .forEach(checked -> checkedImagesId.add(checked.getId()))
+        );
+
+        //Find the users images and makes a filter on the checked images
+        List<Image> albumImages = imageService.getImageFromUser(user).stream().filter(image -> checkedImagesId.contains(image.getId().toString())).collect(Collectors.toList());
+
+        if (albumImages.size() > 0){
+            Optional<Album> createdAlbum = albumService.createAlbum(title, description, user, tagsToAdd, albumImages);
+            createdAlbum.ifPresent(album -> {
+                App.ex.setChosenAlbumId(album.getId());
+                try {
+                    App.setRoot("view_album");
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            });
+        }
+        else {
+            Optional<Album> createdAlbum = albumService.createEmptyAlbum(title, description, user, tagsToAdd);
+            createdAlbum.ifPresent(album -> {
+                App.ex.setChosenAlbumId(album.getId());
+                try {
+                    App.setRoot("view_album");
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            });
+        }
     }
 }
diff --git a/src/main/java/NTNU/IDATT1002/repository/ImageRepository.java b/src/main/java/NTNU/IDATT1002/repository/ImageRepository.java
index 07883fe1b2a46fa7493c0ced440ae7afc65aa927..e432488be4c9b032935e159c77b4f611d8f2c202 100644
--- a/src/main/java/NTNU/IDATT1002/repository/ImageRepository.java
+++ b/src/main/java/NTNU/IDATT1002/repository/ImageRepository.java
@@ -22,7 +22,7 @@ public class ImageRepository extends AbstractRepository<Image, Long> {
     /**
      * Mapping to @NamedQuery 'find all albums by users username' defined in {@link  Image}
      */
-    public static final String IMAGE_FIND_BY_USERNAME = "Album.findAllByUsername";
+    public static final String IMAGE_FIND_BY_USERNAME = "Image.findAllByUsername";
 
     /**
      * Constructor to inject {@link EntityManager} dependency.
diff --git a/src/main/resources/NTNU/IDATT1002/create_album.fxml b/src/main/resources/NTNU/IDATT1002/create_album.fxml
index d8bd5fc47411aa662dc6904f2e034c1430efbd64..6ab9cf5f3120c7582a4342623bbae8c5921c2cc4 100644
--- a/src/main/resources/NTNU/IDATT1002/create_album.fxml
+++ b/src/main/resources/NTNU/IDATT1002/create_album.fxml
@@ -1,19 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<?import javafx.geometry.Insets?>
-<?import javafx.scene.control.Button?>
-<?import javafx.scene.control.ScrollPane?>
-<?import javafx.scene.control.TextArea?>
-<?import javafx.scene.control.TextField?>
-<?import javafx.scene.image.Image?>
-<?import javafx.scene.image.ImageView?>
-<?import javafx.scene.layout.HBox?>
-<?import javafx.scene.layout.Pane?>
-<?import javafx.scene.layout.VBox?>
-<?import javafx.scene.text.Font?>
-<?import javafx.scene.text.Text?>
+<?import javafx.geometry.*?>
+<?import javafx.scene.control.*?>
+<?import javafx.scene.image.*?>
+<?import javafx.scene.layout.*?>
+<?import javafx.scene.text.*?>
 
-<VBox xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="NTNU.IDATT1002.controllers.CreateAlbum">
+<VBox xmlns="http://javafx.com/javafx/10.0.2-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="NTNU.IDATT1002.controllers.CreateAlbum">
    <children>
       <HBox alignment="CENTER" minHeight="100.0" prefHeight="100.0" prefWidth="1920.0" spacing="20.0" style="-fx-background-color: #0c0c0c;">
          <children>
@@ -65,12 +58,7 @@
                         <Pane fx:id="metadata_pane" prefHeight="373.0" prefWidth="739.0" style="-fx-background-color: #ffff;" />
                         <HBox alignment="CENTER" prefHeight="41.0" prefWidth="662.0" spacing="20.0">
                            <children>
-                              <Button fx:id="add_images_button" mnemonicParsing="false" text="ADD IMAGES">
-                                 <font>
-                                    <Font name="System Bold" size="18.0" />
-                                 </font>
-                              </Button>
-                              <Button fx:id="create_album_button" mnemonicParsing="false" onAction="#createEmptyAlbum" text="CREATE ALBUM">
+                              <Button fx:id="create_album_button" mnemonicParsing="false" onAction="#createAlbum" text="CREATE ALBUM">
                                  <font>
                                     <Font name="System Bold" size="18.0" />
                                  </font>
@@ -83,21 +71,10 @@
             </VBox>
             <ScrollPane hbarPolicy="NEVER" prefHeight="920.0" prefWidth="450.0">
                <content>
-                  <VBox alignment="TOP_CENTER" prefWidth="450.0" spacing="10.0">
-                     <children>
-                        <ImageView fitHeight="218.0" fitWidth="328.0" pickOnBounds="true" preserveRatio="true">
-                           <image>
-                              <Image url="@../../Images/placeholder-1920x1080.png" />
-                           </image>
-                        </ImageView>
-                     </children>
-                     <padding>
-                        <Insets top="65.0" />
-                     </padding>
+                  <VBox fx:id="fileContainer" alignment="TOP_CENTER" prefWidth="450.0" spacing="10.0">
                   </VBox>
                </content>
             </ScrollPane>
-            <VBox prefHeight="200.0" prefWidth="250.0" HBox.hgrow="ALWAYS" />
          </children>
       </HBox>
    </children>
diff --git a/src/main/resources/NTNU/IDATT1002/explore_albums.fxml b/src/main/resources/NTNU/IDATT1002/explore_albums.fxml
index 947d26f51167c01a016c9f82eaafd8f92d817605..dff4b61442b8a82561b317e1604b00cf38a5db60 100644
--- a/src/main/resources/NTNU/IDATT1002/explore_albums.fxml
+++ b/src/main/resources/NTNU/IDATT1002/explore_albums.fxml
@@ -18,7 +18,7 @@
 <?import javafx.scene.text.Text?>
 <?import javafx.scene.control.ProgressBar?>
 
-<VBox fx:id="root" prefHeight="1080.0" prefWidth="1920.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="NTNU.IDATT1002.controllers.ExploreAlbums">
+<VBox fx:id="pageRootContainer" prefHeight="1080.0" prefWidth="1920.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="NTNU.IDATT1002.controllers.ExploreAlbums">
    <children>
       <HBox fx:id="progressBarContainer" alignment="CENTER" minHeight="15.0" prefHeight="15.0" prefWidth="1920.0" spacing="20.0" style="-fx-background-color: #6d6d6d;">
          <children>