diff --git a/DESCRIPTION b/DESCRIPTION
index 13b0712..6d63049 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -13,3 +13,5 @@ Suggests:
testthat (>= 3.0.0)
Config/testthat/edition: 3
URL: https://kubdatalab.github.io/KBAPI/
+Imports:
+ httr2
diff --git a/NAMESPACE b/NAMESPACE
index 74697fc..32577b4 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -1,3 +1,6 @@
# Generated by roxygen2: do not edit by hand
-export(get_arial)
+export(get_aerial)
+importFrom(httr2,req_perform)
+importFrom(httr2,req_url_query)
+importFrom(httr2,request)
diff --git a/R/KBapi-package.R b/R/KBapi-package.R
new file mode 100644
index 0000000..20d129a
--- /dev/null
+++ b/R/KBapi-package.R
@@ -0,0 +1,9 @@
+#' @keywords internal
+"_PACKAGE"
+
+## usethis namespace: start
+#' @importFrom httr2 req_perform
+#' @importFrom httr2 req_url_query
+#' @importFrom httr2 request
+## usethis namespace: end
+NULL
diff --git a/R/get_aerial.R b/R/get_aerial.R
new file mode 100644
index 0000000..5aa90e4
--- /dev/null
+++ b/R/get_aerial.R
@@ -0,0 +1,45 @@
+#' Søg luftfotos
+#'
+#' En kort beskrivelse af hvad funktionen gør.
+#'
+#' @param lat Beskrivelse af første parameter.
+#' @param lon Beskrivelse af anden parameter.
+#' @param format formatet output kommer i. vælg mellem kml, rss, atom og mods
+#' @return Beskrivelse af returværdien.
+#' @examples
+#' # Eksempel på brug af funktionen
+#' get_aerial(lat = 1, lon = 2)
+#' @export
+
+
+get_aerial <- function(lat=56.007514636317666, lon=12.228840190005485, format = "kml"){
+ # tjek input
+ api_url <- "http://www.kb.dk/cop/syndication/images/luftfo/2011/maj/luftfoto/subject203/"
+ formatted_lat <- sprintf("%.16f", lat)
+ formatted_lon <- sprintf("%.16f", lon)
+ query_params <- list(
+ bbo = "10.395490670074423,55.22227193719089,10.296785378326376,55.18994697228769",
+ zoom = 14,
+ lat = formatted_lat,
+ lng = formatted_lon,
+ page = 1,
+ q_fritekst = "",
+ q_stednavn = "",
+ q_bygningsnavn = "",
+ q_person = "",
+ q_adresse = "",
+ notBefore = "1920",
+ notAfter = "1970",
+ category = "subject203",
+ itemType = "all",
+ thumbnailSize = "",
+ format = format,
+ itemsPerPage = 3
+ )
+ response <- httr2::request(api_url) |>
+ httr2::req_url_query(!!!query_params) |>
+ httr2::req_perform()
+# Her bør der nok være noget tjek af om ting gik godt.
+ response
+}
+
diff --git a/R/get_arial.R b/R/get_arial.R
deleted file mode 100644
index 85bc870..0000000
--- a/R/get_arial.R
+++ /dev/null
@@ -1,14 +0,0 @@
-#' Søg luftfotos
-#'
-#' En kort beskrivelse af hvad funktionen gør.
-#'
-#' @param param1 Beskrivelse af første parameter.
-#' @param param2 Beskrivelse af anden parameter.
-#' @return Beskrivelse af returværdien.
-#' @examples
-#' # Eksempel på brug af funktionen
-#' get_arial(param1 = 1, param2 = 2)
-#' @export
-get_arial <- function(param1, param2){
- param1*param2
-}
diff --git a/README.Rmd b/README.Rmd
index 00c8d2b..e24022f 100644
--- a/README.Rmd
+++ b/README.Rmd
@@ -13,12 +13,15 @@ knitr::opts_chunk$set(
)
```
-# KBapi
+# KBapi
[![R-CMD-check](https://github.com/KUBDatalab/KBAPI/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/KUBDatalab/KBAPI/actions/workflows/R-CMD-check.yaml)
+
+
+
The goal of KBapi is to ...
## Installation
@@ -26,7 +29,17 @@ The goal of KBapi is to ...
You can install the development version of KBapi like so:
``` r
-# FILL THIS IN! HOW CAN PEOPLE INSTALL YOUR DEV PACKAGE?
+options(repos = c(
+ kubdatalab = '',
+ CRAN = 'httpos://cloud.r-project.org')
+)
+
+install.packages('KBAPI')
+```
+
+Or directly from github:
+``` r
+devtools::install_github('KUBDatalab/KBAPI')
```
## Example
diff --git a/README.md b/README.md
index 5313cf7..cf8701b 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
-# KBapi
+# KBapi
@@ -15,7 +15,18 @@ The goal of KBapi is to …
You can install the development version of KBapi like so:
``` r
-# FILL THIS IN! HOW CAN PEOPLE INSTALL YOUR DEV PACKAGE?
+options(repos = c(
+ kubdatalab = '',
+ CRAN = 'httpos://cloud.r-project.org')
+)
+
+install.packages('KBAPI')
+```
+
+Or directly from github:
+
+``` r
+devtools::install_github('KUBDatalab/KBAPI')
```
## Example
diff --git a/man/KBapi-package.Rd b/man/KBapi-package.Rd
new file mode 100644
index 0000000..5b74da7
--- /dev/null
+++ b/man/KBapi-package.Rd
@@ -0,0 +1,24 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/KBapi-package.R
+\docType{package}
+\name{KBapi-package}
+\alias{KBapi}
+\alias{KBapi-package}
+\title{KBapi: What the Package Does (One Line, Title Case)}
+\description{
+\if{html}{\figure{logo.png}{options: style='float: right' alt='logo' width='120'}}
+
+What the package does (one paragraph).
+}
+\seealso{
+Useful links:
+\itemize{
+ \item \url{https://kubdatalab.github.io/KBAPI/}
+}
+
+}
+\author{
+\strong{Maintainer}: First Last \email{first.last@example.com} (\href{https://orcid.org/YOUR-ORCID-ID}{ORCID})
+
+}
+\keyword{internal}
diff --git a/man/figures/logo.png b/man/figures/logo.png
new file mode 100644
index 0000000..a9a2dbe
Binary files /dev/null and b/man/figures/logo.png differ
diff --git a/man/get_aerial.Rd b/man/get_aerial.Rd
new file mode 100644
index 0000000..c3b470f
--- /dev/null
+++ b/man/get_aerial.Rd
@@ -0,0 +1,23 @@
+% Generated by roxygen2: do not edit by hand
+% Please edit documentation in R/get_aerial.R
+\name{get_aerial}
+\alias{get_aerial}
+\title{Søg luftfotos}
+\usage{
+get_aerial(lat = 56.0075146363177, lon = 12.2288401900055)
+}
+\arguments{
+\item{lat}{Beskrivelse af første parameter.}
+
+\item{lon}{Beskrivelse af anden parameter.}
+}
+\value{
+Beskrivelse af returværdien.
+}
+\description{
+En kort beskrivelse af hvad funktionen gør.
+}
+\examples{
+# Eksempel på brug af funktionen
+get_aerial(lat = 1, lon = 2)
+}
diff --git a/man/get_arial.Rd b/man/get_arial.Rd
deleted file mode 100644
index e726780..0000000
--- a/man/get_arial.Rd
+++ /dev/null
@@ -1,23 +0,0 @@
-% Generated by roxygen2: do not edit by hand
-% Please edit documentation in R/get_arial.R
-\name{get_arial}
-\alias{get_arial}
-\title{Søg luftfotos}
-\usage{
-get_arial(param1, param2)
-}
-\arguments{
-\item{param1}{Beskrivelse af første parameter.}
-
-\item{param2}{Beskrivelse af anden parameter.}
-}
-\value{
-Beskrivelse af returværdien.
-}
-\description{
-En kort beskrivelse af hvad funktionen gør.
-}
-\examples{
-# Eksempel på brug af funktionen
-get_arial(param1 = 1, param2 = 2)
-}
diff --git a/skrammel/R/luftfotos.R b/skrammel/R/luftfotos.R
index 82cc4e5..ba8f00f 100644
--- a/skrammel/R/luftfotos.R
+++ b/skrammel/R/luftfotos.R
@@ -20,11 +20,11 @@ query_params <- list(
q_person = "",
q_adresse = "",
notBefore = 1920,
- notAfter = 1970,
+ notAfter = 1990,
category = "subject203",
itemType = "all",
thumbnailSize = "",
- format = "xml"
+ format = "kml"
)
# Send GET-anmodningen med parametre som query string
@@ -33,4 +33,4 @@ response <- request(api_url) %>%
req_perform()
response
-
+request(api_url) %>% req_perform()
diff --git a/skrammel/ekstrationstests.R b/skrammel/ekstrationstests.R
new file mode 100644
index 0000000..20c2bd7
--- /dev/null
+++ b/skrammel/ekstrationstests.R
@@ -0,0 +1,51 @@
+library(xml2)
+library(jsonlite)
+library(tidyverse)
+test <- get_aerial(format = "kml")
+noget <- test %>%
+ resp_body_xml()
+# %>%
+# toJSON(pretty = TRUE, auto_unbox = TRUE) %>%
+# jsonlite::fromJSON()
+# noget$kml$Document
+noget %>% class()
+noget$Document$Placemark
+
+
+extract_all_nodes <- function(node) {
+ # Find alle børn af noden
+ children <- xml_children(node)
+
+ # Hvis noden har børn, anvend funktionen rekursivt på hvert barn
+ if (length(children) > 0) {
+ # For hver child node, rekursivt udtræk data
+ return(map(children, extract_all_nodes))
+ } else {
+ # Hvis noden ikke har børn, returner nodens navn og værdi
+ return(set_names(xml_text(node), xml_name(node)))
+ }
+}
+
+# Funktion til at flade listen og håndtere noder med flere lag
+flatten_xml_data <- function(xml_list) {
+ # Hvis det er en liste med lister, flad dem ud
+ if (is.list(xml_list) && !is.null(names(xml_list))) {
+ return(map(xml_list, flatten_xml_data))
+ } else if (is.list(xml_list)) {
+ return(unlist(xml_list))
+ } else {
+ return(xml_list)
+ }
+}
+
+extracted_data <- extract_all_nodes(noget)
+
+# Flad dataene ud og konverter til tibble
+flattened_data <- map_dfr(extracted_data, flatten_xml_data)
+
+# Konverter det fladede data til en tibble
+kml_tibble <- as_tibble(flattened_data)
+kml_tibble %>%
+ select(-text,
+ -startIndex,
+ -Query)
diff --git a/skrammel/logo-script.R b/skrammel/logo-script.R
new file mode 100644
index 0000000..ad1cb13
--- /dev/null
+++ b/skrammel/logo-script.R
@@ -0,0 +1,12 @@
+sticker(
+ "c:/Users/cbk/Desktop/kblogo.jpg",
+ package = "KBAPI",
+ h_fill = "black",
+ h_color = "black",
+ bg = NA,
+ p_size = 20,
+ p_y = 1.6,
+ s_x = 1, s_y = 1, # Justering af billedets placering
+ s_width = 0.6, # Størrelsen på baggrundsbilledet
+ filename = "man/figures/logo.png" # Outputstien og filnavnet for hexstickeren
+)