diff --git a/task-1/delete.sh b/task-1/delete.sh new file mode 100644 index 0000000..4b8d7af --- /dev/null +++ b/task-1/delete.sh @@ -0,0 +1 @@ +curl -X DELETE http://localhost:3000/users/11 \ No newline at end of file diff --git a/task-1/get.sh b/task-1/get.sh new file mode 100644 index 0000000..8c2a7c5 --- /dev/null +++ b/task-1/get.sh @@ -0,0 +1 @@ +curl http://localhost:3000/users/11 \ No newline at end of file diff --git a/task-1/patch.sh b/task-1/patch.sh new file mode 100644 index 0000000..6ee9ef5 --- /dev/null +++ b/task-1/patch.sh @@ -0,0 +1,5 @@ +curl -X PATCH http://localhost:3000/users/11 \ +-H "Content-Type: application/json; charset=UTF-8" \ +-d '{ + "email": "johndoe@example.com" +}' \ No newline at end of file diff --git a/task-1/post.sh b/task-1/post.sh new file mode 100644 index 0000000..4f0c4c0 --- /dev/null +++ b/task-1/post.sh @@ -0,0 +1,10 @@ +curl -X POST http://localhost:3000/users \ +-H "Content-Type: application/json; charset=UTF-8" \ +-d '{ + "name": "John Doe", + "email": "john.doe@example.com", + "password": "secret123", + "role": "user", + "active": true, + "department": "Engineering" +}' \ No newline at end of file diff --git a/task-2/services.js b/task-2/services.js index 2126969..a25a132 100644 --- a/task-2/services.js +++ b/task-2/services.js @@ -1,8 +1,8 @@ // Nobel Prize API Documentation: https://www.nobelprize.org/about/developer-zone-2/ -import { fetchData } from './fetcher.js'; +import { fetchData } from "./fetcher.js"; -const API_BASE_URL = 'https://api.nobelprize.org/2.1'; +const API_BASE_URL = "https://api.nobelprize.org/2.1"; /** * Fetch Nobel Prizes with optional filters @@ -15,7 +15,20 @@ const API_BASE_URL = 'https://api.nobelprize.org/2.1'; * @param {Function} onError - Callback for fetch errors */ export function fetchNobelPrizes(filters = {}, onSuccess, onError) { - let url = ''; // TODO Construct the full URL with query parameters; + const params = new URLSearchParams(); + params.set("offset", filters.offset || 0); + params.set("limit", filters.limit || 10); + params.set("sort", "desc"); + + if (filters.year && filters.years !== "all") { + params.set("nobelPrizeYear", filters.year); + } + + if (filters.category && filters.category !== "all") { + params.set("nobelPrizeCategory", filters.category); + } + + const url = `${API_BASE_URL}/nobelPrizes?${params.toString()}`; fetchData(url, onSuccess, onError); }