Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 24f915ee55 | |||
| 5da67c4c06 | |||
| a21eaa40f2 | |||
| a00e40dbe9 | |||
| fa51914987 | |||
| c8d40c1630 | |||
| f673fe99ef | |||
| 8d5d0672cc | |||
| 09def50875 |
@@ -4,7 +4,7 @@ import linkedInLogo from "../../../assets/images/Linkedin.png";
|
|||||||
import appleLogo from "../../../assets/images/apple-black.svg";
|
import appleLogo from "../../../assets/images/apple-black.svg";
|
||||||
import facebookLogo from "../../../assets/images/facebook.svg";
|
import facebookLogo from "../../../assets/images/facebook.svg";
|
||||||
import googleLogo from "../../../assets/images/google-logo.svg";
|
import googleLogo from "../../../assets/images/google-logo.svg";
|
||||||
import WrenchBoard from "../../../assets/images/wrenchboard-logo-text.png";
|
import WrenchBoard from "../../../assets/images/wrenchboard-logo-text_new.png";
|
||||||
import usersService from "../../../services/UsersService";
|
import usersService from "../../../services/UsersService";
|
||||||
import InputCom from "../../Helpers/Inputs/InputCom";
|
import InputCom from "../../Helpers/Inputs/InputCom";
|
||||||
import AuthLayout from "../AuthLayout2";
|
import AuthLayout from "../AuthLayout2";
|
||||||
|
|||||||
@@ -544,6 +544,7 @@ function ActiveJobs(props) {
|
|||||||
<AttachFile
|
<AttachFile
|
||||||
data={props.details}
|
data={props.details}
|
||||||
showOnData={true}
|
showOnData={true}
|
||||||
|
fontSize={'text-lg'}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div className="flex justify-between items-center gap-5">
|
<div className="flex justify-between items-center gap-5">
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import axios from 'axios'
|
|||||||
|
|
||||||
import usersService from '../../services/UsersService'
|
import usersService from '../../services/UsersService'
|
||||||
|
|
||||||
export default function AttachFile({data='', showOnData=false}) {
|
export default function AttachFile({data='', fontSize='text-sm', showOnData=false}) {
|
||||||
|
|
||||||
const apiCall = new usersService()
|
const apiCall = new usersService()
|
||||||
|
|
||||||
@@ -37,7 +37,7 @@ export default function AttachFile({data='', showOnData=false}) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
axios.post(`${process.env.REACT_APP_MEDIA_LINK}/upload/task`,formData).then(res => {
|
axios.post(`${process.env.REACT_APP_MEDIA_LINK}/upload/task`,formData).then(res => {
|
||||||
if(res.data.status < 1){
|
if(res.data.internal_return < 0){
|
||||||
inputFile.current.value = null
|
inputFile.current.value = null
|
||||||
setRequestStatus({loading: false, status:false, message:'upload failed'})
|
setRequestStatus({loading: false, status:false, message:'upload failed'})
|
||||||
setTimeout(()=>{
|
setTimeout(()=>{
|
||||||
@@ -73,7 +73,7 @@ export default function AttachFile({data='', showOnData=false}) {
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
{!showOnData ?
|
{!showOnData ?
|
||||||
<div className='w-full h-full flex flex-col justify-center items-center rounded-md'>
|
<div className='w-full h-full flex flex-col justify-center items-center'>
|
||||||
<div className='w-full flex flex-col items-start gap-1 overflow-hidden'>
|
<div className='w-full flex flex-col items-start gap-1 overflow-hidden'>
|
||||||
<div className='w-full flex justify-between items-center gap-1'>
|
<div className='w-full flex justify-between items-center gap-1'>
|
||||||
<div className='job-label job-label-flex'>
|
<div className='job-label job-label-flex'>
|
||||||
@@ -84,37 +84,39 @@ export default function AttachFile({data='', showOnData=false}) {
|
|||||||
<span className={`text-[10px] ${requestStatus.status ? 'text-emerald-600' : 'text-red-500'}`}>{requestStatus.message}</span>
|
<span className={`text-[10px] ${requestStatus.status ? 'text-emerald-600' : 'text-red-500'}`}>{requestStatus.message}</span>
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
<label htmlFor='file' className={`cursor-pointer text-[12px] py-1 px-2 rounded-full border ${ requestStatus.loading && 'pointer-events-none'}`}>+ Add</label>
|
<label htmlFor='file' className={`text-black bg-[#f8ffd4] cursor-pointer text-[12px] py-1 px-2 rounded-full border ${ requestStatus.loading && 'pointer-events-none'}`}>+ Add Files</label>
|
||||||
</div>
|
</div>
|
||||||
<div className='text-[12px] w-full px-2 py-1 h-20 overflow-y-auto flex flex-col gap-1 border'>
|
<div className='w-full p-2 rounded-2xl bg-slate-100'>
|
||||||
{uploadedList.loading ?
|
<div className='text-[12px] w-full h-20 overflow-y-auto flex flex-col gap-2'>
|
||||||
<div className='w-full h-full justify-center items-center'>
|
{uploadedList.loading ?
|
||||||
<LoadingSpinner size='6' height='h-full' />
|
<div className='w-full h-full justify-center items-center'>
|
||||||
|
<LoadingSpinner size='6' height='h-full' />
|
||||||
|
</div>
|
||||||
|
:
|
||||||
|
Object.keys(uploadedList.data).length > 0 ?
|
||||||
|
uploadedList.data.result_list.length > 0 ?
|
||||||
|
uploadedList.data.result_list.map((item, index) => {
|
||||||
|
let fileNameExt = item.originalname.split('.')[item.originalname.split('.').length - 1]
|
||||||
|
return(
|
||||||
|
<div key={item.file_uid} className={`my-[6px] flex justify-start gap-2 ${fontSize}`}>
|
||||||
|
<span>{index + 1}:</span>
|
||||||
|
<a
|
||||||
|
target='_blank'
|
||||||
|
alt='download-link'
|
||||||
|
className=''
|
||||||
|
href={`${uploadedList?.data?.session_image_server}/${localStorage.getItem("session_token")}/jobfile/${item.file_uid}`}
|
||||||
|
>
|
||||||
|
{(item.originalname).toString().length > 30 ? (item.originalname).toString().slice(0, 26) + '..._.' + fileNameExt : (item.originalname).toString()}
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
})
|
||||||
|
:
|
||||||
|
<p className='text-sm'>No Uploaded files yet</p>
|
||||||
|
:
|
||||||
|
<></>
|
||||||
|
}
|
||||||
</div>
|
</div>
|
||||||
:
|
|
||||||
Object.keys(uploadedList.data).length > 0 ?
|
|
||||||
uploadedList.data.result_list.length > 0 ?
|
|
||||||
uploadedList.data.result_list.map((item, index) => {
|
|
||||||
let fileNameExt = item.originalname.split('.')[item.originalname.split('.').length - 1]
|
|
||||||
return(
|
|
||||||
<div key={item.file_uid} className='my-1 flex justify-start gap-2'>
|
|
||||||
<span>{index + 1}:</span>
|
|
||||||
<a
|
|
||||||
target='_blank'
|
|
||||||
alt='download-link'
|
|
||||||
className=''
|
|
||||||
href={`${uploadedList?.data?.session_image_server}/${localStorage.getItem("session_token")}/jobfile/${item.file_uid}`}
|
|
||||||
>
|
|
||||||
{(item.originalname).toString().length > 30 ? (item.originalname).toString().slice(0, 26) + '..._.' + fileNameExt : (item.originalname).toString()}
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
)
|
|
||||||
})
|
|
||||||
:
|
|
||||||
<p className='text-sm'>No Uploaded files yet</p>
|
|
||||||
:
|
|
||||||
<></>
|
|
||||||
}
|
|
||||||
</div>
|
</div>
|
||||||
<input
|
<input
|
||||||
type="file"
|
type="file"
|
||||||
@@ -126,31 +128,33 @@ export default function AttachFile({data='', showOnData=false}) {
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
:showOnData && uploadedList?.data?.result_list?.length > 0 ?
|
:showOnData && uploadedList?.data?.result_list?.length > 0 ?
|
||||||
<div className='w-full h-full flex flex-col justify-center items-center rounded-md'>
|
<div className='w-full h-full flex flex-col justify-center items-center'>
|
||||||
<div className='w-full flex flex-col items-start gap-1 overflow-hidden'>
|
<div className='w-full flex flex-col items-start gap-1 overflow-hidden'>
|
||||||
<div className='w-full flex justify-between items-center gap-1'>
|
<div className='w-full flex justify-between items-center gap-1'>
|
||||||
<div className='job-label job-label-flex'>
|
<div className='job-label job-label-flex'>
|
||||||
Files
|
Files
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div className='text-[12px] w-full px-2 py-1 h-20 overflow-y-auto flex flex-col gap-1 border'>
|
<div className='w-full p-2 rounded-2xl bg-slate-100'>
|
||||||
{uploadedList.data.result_list.map((item, index) => {
|
<div className='text-[12px] w-full p-2 h-20 overflow-y-auto flex flex-col gap-2'>
|
||||||
let fileNameExt = item.originalname.split('.')[item.originalname.split('.').length - 1]
|
{uploadedList.data.result_list.map((item, index) => {
|
||||||
return(
|
let fileNameExt = item.originalname.split('.')[item.originalname.split('.').length - 1]
|
||||||
<div key={item.file_uid} className='flex justify-start gap-2'>
|
return(
|
||||||
<span>{index + 1}:</span>
|
<div key={item.file_uid} className={`my-[6px] flex justify-start gap-2 ${fontSize}`}>
|
||||||
<a
|
<span>{index + 1}:</span>
|
||||||
target='_blank'
|
<a
|
||||||
alt='download-link'
|
target='_blank'
|
||||||
className=''
|
alt='download-link'
|
||||||
href={`${uploadedList?.data?.session_image_server}/${localStorage.getItem("session_token")}/jobfile/${item.file_uid}`}
|
className=''
|
||||||
>
|
href={`${uploadedList?.data?.session_image_server}/${localStorage.getItem("session_token")}/jobfile/${item.file_uid}`}
|
||||||
{(item.originalname).toString().length > 30 ? (item.originalname).toString().slice(0, 26) + '..._.' + fileNameExt : (item.originalname).toString()}
|
>
|
||||||
</a>
|
{(item.originalname).toString().length > 30 ? (item.originalname).toString().slice(0, 26) + '..._.' + fileNameExt : (item.originalname).toString()}
|
||||||
</div>
|
</a>
|
||||||
)
|
</div>
|
||||||
})
|
)
|
||||||
}
|
})
|
||||||
|
}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<input
|
<input
|
||||||
type="file"
|
type="file"
|
||||||
|
|||||||
Reference in New Issue
Block a user