diff --git a/awx/ui_next/src/screens/Template/Template.jsx b/awx/ui_next/src/screens/Template/Template.jsx index 71cab03f77..fe997c5176 100644 --- a/awx/ui_next/src/screens/Template/Template.jsx +++ b/awx/ui_next/src/screens/Template/Template.jsx @@ -16,7 +16,6 @@ import JobTemplateDetail from './JobTemplateDetail'; import JobTemplateEdit from './JobTemplateEdit'; import { JobTemplatesAPI, OrganizationsAPI } from '@api'; import TemplateSurvey from './TemplateSurvey'; -// import SurveyList from './shared/SurveyList'; class Template extends Component { constructor(props) { diff --git a/awx/ui_next/src/screens/Template/TemplateSurvey.jsx b/awx/ui_next/src/screens/Template/TemplateSurvey.jsx index bb19f04df4..5c3a3657a6 100644 --- a/awx/ui_next/src/screens/Template/TemplateSurvey.jsx +++ b/awx/ui_next/src/screens/Template/TemplateSurvey.jsx @@ -28,11 +28,7 @@ function TemplateSurvey({ template, i18n }) { fetchSurvey(); }, [fetchSurvey]); - const { - request: updateSurvey, - isLoading: isUpdateLoading, - error: updateError, - } = useRequest( + const { request: updateSurvey, error: updateError } = useRequest( useCallback( async updatedSurvey => { await JobTemplatesAPI.updateSurvey(template.id, updatedSurvey); @@ -42,22 +38,14 @@ function TemplateSurvey({ template, i18n }) { ) ); - const { - request: deleteSurvey, - isLoading: isDeleteLoading, - error: deleteError, - } = useRequest( + const { request: deleteSurvey, error: deleteError } = useRequest( useCallback(async () => { await JobTemplatesAPI.destroySurvey(template.id); setSurvey(null); }, [template.id, setSurvey]) ); - const { - request: toggleSurvey, - isLoading: isToggleLoading, - error: toggleError, - } = useRequest( + const { request: toggleSurvey, error: toggleError } = useRequest( useCallback(async () => { await JobTemplatesAPI.update(template.id, { survey_enabled: !surveyEnabled, @@ -78,6 +66,7 @@ function TemplateSurvey({ template, i18n }) { { - if (selected.some(s => s.id === item.id)) { - setSelected(selected.filter(s => s.id !== item.id)); + if (selected.some(q => q.variable === item.variable)) { + setSelected(selected.filter(q => q.variable !== item.variable)); } else { setSelected(selected.concat(item)); } @@ -71,8 +68,7 @@ function SurveyList({ }; let content; - // TODO - if (false) { + if (isLoading) { content = ; } else if (!questions || questions?.length <= 0) { content = ( @@ -82,37 +78,24 @@ function SurveyList({ /> ); } else { - content = questions?.map((question, index) => ( - s.id === question.id)} - onSelect={() => handleSelect(question)} - onMoveUp={moveUp} - onMoveDown={moveDown} - /> - )); + content = ( + + {questions?.map((question, index) => ( + q.variable === question.variable)} + onSelect={() => handleSelect(question)} + onMoveUp={moveUp} + onMoveDown={moveDown} + /> + ))} + + ); } - // const error = deletionError || toggleError || updateError; - // let errorMessage = ''; - // if (updateError) { - // errorMessage = i18n._(t`Failed to update survey`); - // } - // if (toggleError) { - // errorMessage = i18n._(t`Failed to toggle survey`); - // } - // if (deletionError) { - // errorMessage = i18n._(t`Failed to delete survey`); - // } - // useEffect(() => { - // if (error) { - // setShowError(true); - // } - // }, [error]); - return ( <> { setIsDeleteModalOpen(false); - setSelected([]); }} actions={[ , - , - ]} - > -
{i18n._(t`This action will delete the following:`)}
- {selected.map(question => ( - - {question.question_name} -
-
- ))} - - )} - {showError && ( - setShowError(false)} - > - {errorMessage} - - - )} - - ); -} - -export default withI18n()(SurveyList); diff --git a/awx/ui_next/src/screens/Template/shared/SurveyListItem.jsx b/awx/ui_next/src/screens/Template/shared/SurveyListItem.jsx index 9181230419..b91e92ae9b 100644 --- a/awx/ui_next/src/screens/Template/shared/SurveyListItem.jsx +++ b/awx/ui_next/src/screens/Template/shared/SurveyListItem.jsx @@ -1,10 +1,8 @@ import React from 'react'; import { t } from '@lingui/macro'; import { withI18n } from '@lingui/react'; - import { Button as _Button, - DataList, DataListAction as _DataListAction, DataListCheck, DataListItemCells, @@ -28,6 +26,7 @@ const Button = styled(_Button)` padding-bottom: 0; padding-left: 0; `; + function SurveyListItem({ question, i18n, @@ -39,56 +38,54 @@ function SurveyListItem({ onMoveDown, }) { return ( - - - - - - - - - - - - - - - - {question.question_name} - , - {question.type}, - - {question.default} - , - ]} - /> - - - + + + + + + + + + + + + + + + {question.question_name} + , + {question.type}, + + {question.default} + , + ]} + /> + + ); }