From 5228006614a8b11fd4a6e08a00fe99d0982d7385 Mon Sep 17 00:00:00 2001
From: Vinicius Gabriel Machado <vgm18@inf.ufpr.br>
Date: Mon, 26 Apr 2021 15:05:41 -0300
Subject: [PATCH] Fixing minor bugs

---
 src/Components/HomeScreenSearchBar.js |  2 +-
 src/Pages/EditLearningObjectPage.js   | 51 ++++++++++++++++++++++++---
 2 files changed, 48 insertions(+), 5 deletions(-)

diff --git a/src/Components/HomeScreenSearchBar.js b/src/Components/HomeScreenSearchBar.js
index ed3b4cc1..9d46b996 100644
--- a/src/Components/HomeScreenSearchBar.js
+++ b/src/Components/HomeScreenSearchBar.js
@@ -146,7 +146,7 @@ export default function HomeScreenSearchBar (props) {
                 </Grid>
                 <Grid item md={2} xs={12}>
                     <div style={{height : "100%"}}>
-                        <Link to={`/busca?query=${query}&search_class=${searchClass}`}>
+                        <Link to={`/busca?query=${state.search.query}&search_class=${searchClass}`}>
                             <Button className="custom-button" style={{backgroundColor : options[selectedIndex].color, color : "#fff"}}>
                                 {
                                     WIDTH < 503 &&
diff --git a/src/Pages/EditLearningObjectPage.js b/src/Pages/EditLearningObjectPage.js
index 1f929c47..d7510242 100644
--- a/src/Pages/EditLearningObjectPage.js
+++ b/src/Pages/EditLearningObjectPage.js
@@ -102,6 +102,7 @@ export default function EditLearningObjectPage (props) {
 
     const onBlurCallback = (fieldName, payload) => {
         setUpdatedInfo({...updatedInfo, [fieldName] : payload})
+        handleUpdateInfo()
     }
 
     const [snackbarOpen, toggleSnackbar] = useState(false)
@@ -123,7 +124,10 @@ export default function EditLearningObjectPage (props) {
             "learning_object" : updatedInfo
         }
 
-        putRequest(url, payload, (data) => {props.history.goBack()}, (error) => {console.log(error)})
+        putRequest(url, payload,
+            (data) => {},
+            (error) => {console.log(error)}
+        )
     }
 
     const handlePost = () => {
@@ -140,6 +144,34 @@ export default function EditLearningObjectPage (props) {
 
     }
 
+    const handleSubmit = () => {
+        if (state.currentUser.id !== "") {
+            const url = `/submissions/`
+
+            let payload = {
+                "submission" : {
+                    "learning_object_id" : learningObject.id
+                }
+            }
+
+            postRequest(url, payload,
+                (data) => {props.history.push( `/recurso/${learningObject.id}`)},
+                (error) => {console.log(error)}
+            )
+
+        }
+    }
+
+    const checkAccessLevel = (levelToCheck) => {
+        if (state.currentUser.id !== '') {
+            return (checkUserRole(levelToCheck))
+        }
+    }
+
+    const checkUserRole = (userRole) => {
+        return (state.currentUser.roles.filter((role) => role.name === userRole).length > 0)
+    }
+
     const [thumbnailStage, setThumbnailStage] = useState('default')
 
     const [thumbnail, setThumbnail] = useState('')
@@ -217,7 +249,7 @@ export default function EditLearningObjectPage (props) {
                                 </Grid>
                                 <Grid item md={8} xs={12}>
                                     <InfoBox>
-                                        <form onSubmit={handlePost}>
+                                        <form>
                                             <div className="cabecalho">
                                                 <h2>Editar Recurso</h2>
                                             </div>
@@ -291,15 +323,26 @@ export default function EditLearningObjectPage (props) {
                                                             </span>
                                                         </GreyButton>
 
-                                                    <OrangeButton onClick={() => {handleUpdateInfo()}}>
+                                                    <OrangeButton onClick={() => {handleUpdateInfo(); props.history.push( `/recurso/${learningObject.id}`)}}>
                                                         SALVAR ALTERAÇÕES
                                                         </OrangeButton>
 
-                                                    {
+                                                    {/*
                                                         learningObject.state === "draft" &&
                                                             <OrangeButton type="submit">
                                                             PUBLICAR RECURSO
                                                             </OrangeButton>
+                                                    */}
+                                                    {
+                                                        checkAccessLevel("partner") ?
+                                                            (
+                                                                <OrangeButton onClick={handlePost}>PUBLICAR RECURSO</OrangeButton>
+                                                            )
+                                                            :
+                                                            (
+                                                                <OrangeButton onClick={handleSubmit}>SUBMETER RECURSO</OrangeButton>
+                                                            )
+
                                                     }
                                                 </div>
                                             </Grid>
-- 
GitLab