diff --git a/invenio_communities/assets/semantic-ui/js/invenio_communities/records_search.js b/invenio_communities/assets/semantic-ui/js/invenio_communities/records_search.js index bffe06010..c8c26e659 100644 --- a/invenio_communities/assets/semantic-ui/js/invenio_communities/records_search.js +++ b/invenio_communities/assets/semantic-ui/js/invenio_communities/records_search.js @@ -1,11 +1,11 @@ import ReactDOM from "react-dom"; import React from "react"; -import { Card, Item, Button } from "semantic-ui-react"; +import { Card, Input, Item } from "semantic-ui-react"; import _truncate from "lodash/truncate"; import { SearchApp } from "../invenio_search_ui/SearchApp"; import { overrideStore } from "react-overridable"; -export function ResultsItemTemplate({result, index}) { +export function ResultsItemTemplate({ result, index }) { return ( @@ -20,7 +20,7 @@ export function ResultsItemTemplate({result, index}) { ); } -export function ResultsGridItemTemplate({result, index}) { +export function ResultsGridItemTemplate({ result, index }) { return ( @@ -42,7 +42,7 @@ const domContainer = document.getElementById("communities-records-search"); const COMMUNITY_ID = domContainer.dataset.communityId; const searchConfig = { api: `/api/records?q=_communities.accepted.id:"${COMMUNITY_ID}"`, - mimetype: 'application/json', + mimetype: "application/json", aggs: [ { title: "Access Right", @@ -55,7 +55,7 @@ const searchConfig = { aggName: "resource_type", }, ], - sort_options:[ + sort_options: [ { text: "Best match", sortBy: "bestmatch", @@ -90,7 +90,44 @@ const searchConfig = { ], }; +// TODO: Remove after https://github.com/inveniosoftware/react-searchkit/issues/117 +// is addressed +const CommunitiesRecordsSearchBarElement = ({ + placeholder: passedPlaceholder, + queryString, + onInputChange, + executeSearch, +}) => { + const placeholder = passedPlaceholder || "Search"; + const onBtnSearchClick = () => { + executeSearch(); + }; + const onKeyPress = (event) => { + if (event.key === "Enter") { + executeSearch(); + } + }; + return ( + { + onInputChange(value); + }} + value={queryString} + onKeyPress={onKeyPress} + /> + ); +}; + +overrideStore.add("SearchBar.element", CommunitiesRecordsSearchBarElement); + ReactDOM.render( - , + , document.getElementById("communities-records-search") ); diff --git a/invenio_communities/assets/semantic-ui/js/invenio_communities/search.js b/invenio_communities/assets/semantic-ui/js/invenio_communities/search.js index 1994e4627..c751e2522 100644 --- a/invenio_communities/assets/semantic-ui/js/invenio_communities/search.js +++ b/invenio_communities/assets/semantic-ui/js/invenio_communities/search.js @@ -1,6 +1,6 @@ import ReactDOM from "react-dom"; import React from "react"; -import { Item, Card } from "semantic-ui-react"; +import { Input, Item, Card } from "semantic-ui-react"; import _truncate from "lodash/truncate"; import { SearchApp } from "../invenio_search_ui/SearchApp"; import { overrideStore } from "react-overridable"; @@ -28,7 +28,7 @@ function ResultsItemTemplate({ result, index }) {
+ /> @@ -87,6 +87,43 @@ const searchConfig = { ], }; +// TODO: Remove after https://github.com/inveniosoftware/react-searchkit/issues/117 +// is addressed +const CommunitiesSearchBarElement = ({ + placeholder: passedPlaceholder, + queryString, + onInputChange, + executeSearch, +}) => { + const placeholder = passedPlaceholder || "Search"; + const onBtnSearchClick = () => { + executeSearch(); + }; + const onKeyPress = (event) => { + if (event.key === "Enter") { + executeSearch(); + } + }; + return ( + { + onInputChange(value); + }} + value={queryString} + onKeyPress={onKeyPress} + /> + ); +}; + +overrideStore.add("SearchBar.element", CommunitiesSearchBarElement); + ReactDOM.render( , document.getElementById("communities-search") diff --git a/invenio_communities/assets/semantic-ui/scss/invenio_communities/theme.scss b/invenio_communities/assets/semantic-ui/scss/invenio_communities/theme.scss index 8fe85300a..f3fe908bd 100644 --- a/invenio_communities/assets/semantic-ui/scss/invenio_communities/theme.scss +++ b/invenio_communities/assets/semantic-ui/scss/invenio_communities/theme.scss @@ -1,7 +1,7 @@ .community-container { background-color: rgb(219, 219, 219); margin-bottom: 20px; - margin-top: -20px; + margin-top: -28px; } .underline { diff --git a/invenio_communities/templates/semantic-ui/invenio_communities/header.html b/invenio_communities/templates/semantic-ui/invenio_communities/header.html index 4d63fd240..83617cef1 100644 --- a/invenio_communities/templates/semantic-ui/invenio_communities/header.html +++ b/invenio_communities/templates/semantic-ui/invenio_communities/header.html @@ -14,7 +14,7 @@ {% block sidebar %}
-
+
@@ -53,7 +53,7 @@

{{ community.title }}

New upload
-