���Root Mod By V1rus_Alfa
User / IP
:
216.73.217.78
Host / Server
:
195.214.235.115 / npln.ir
System
:
Linux damavand.pws-dns.net 5.14.0-503.35.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Apr 4 05:23:43 EDT 2025 x86_64
Command
|
Upload
|
Mass Deface
|
Create
:
/
home2
/
cutunixc
/
.trash
/
pages
/
project
/
Viewing: [id].vue
<script setup lang="ts"> import { useIntervalFn } from '@vueuse/core' const { t } = useI18n() const config = useRuntimeConfig(); const { id } = useRoute().params const { $api } = useNuxtApp() // set Meta definePageMeta({ title: 'Project Details', layout: 'with-out-footer', middleware: ['auth'], }) useHead ({ title: t('Project Details') }) // Fetch Single Unit const { data ,refresh}:any = await useAsyncData(`user:${id}`,async () => { const [result]:any = await Promise.all([ $api(config.public.API_URL+'/analyze/project/single',{ query: { project_id: id }, method: 'POST' }) ]) const projectOptions= JSON.parse(result).data.project return { project:projectOptions , }; },{ server:true , }) useIntervalFn(() => { refresh() }, 5000) const ToggleCollapse = (id:any) => { document.querySelector('#body_collapse_'+id)!.classList.toggle('hidden'); document.querySelector('#header_collapse_'+id)!.classList.toggle('rotate-90'); } </script> <template> <div> <div class=" mt-1 mb-10 px-2"> <section :dir="$i18n.locale == 'en' ? 'ltr' : 'rtl'" > <h2 class=" inline-block mb-5 text-gray-800 border-b border-main-700 text-center bold text-sm" > {{ t('project information') }} </h2> <div class=" w-full flex-wrap flex justify-between items-start"> <div class=" w-full mb-5 flex justify-start items-start"> <span :class="$i18n.locale == 'en' ? ' text-left' : ' text-right'" class="block pl-2 text-gray-800 bg-white text-xs "> {{ t('Project Name') }} : </span> <span :class="$i18n.locale == 'en' ? ' text-left' : ' text-right'" class="block text-gray-500 bg-white text-xs "> {{ data.project.name }} </span> </div> <div class=" w-full mb-5 flex justify-start items-start"> <span :class="$i18n.locale == 'en' ? ' text-left' : ' text-right'" class="block pl-2 text-gray-800 bg-white text-xs "> {{ t('Name Of Employer') }} : </span> <span :class="$i18n.locale == 'en' ? ' text-left' : ' text-right'" class="block text-gray-500 bg-white text-xs "> {{ data.project.name_employer }} </span> </div> </div> </section> <section :dir="$i18n.locale == 'en' ? 'ltr' : 'rtl'" v-if="0 < data.project.groups.length" > <h2 class=" inline-block mb-3 text-gray-800 border-b border-main-700 text-center bold text-sm" > {{ t('Outputs') }} </h2> <ul> <li class=" w-full border-b-2 " v-for="row in data.project.groups" :key="row.id" > <div @click="ToggleCollapse(row.id)" class=" cursor-pointer flex justify-between items-center"> <div class="py-1 mt-1 px-2 cursor-pointer w-full flex justify-between items-center"> <label class=" block mr-2 pb-2 w-full text-main-700 cursor-pointer text-sm "> {{ row.wood_type }} </label> <div class="flex justify-end items-center pb-2"> <UIcon :id="'header_collapse_'+row.id" name="i-heroicons-chevron-down-20-solid" class="text-gray-500 transition-all text-2xl" /> </div> </div> </div> <div :id="'body_collapse_'+row.id" class=" border-t transition-all" > <div class="w-full border-b py-3 flex justify-start items-center" > <template v-if="row.order_form"> <ULink :to="'https://cutunix.com/'+row.order_form" target="_blank" square :class="$i18n.locale == 'en' ? 'mr-1' : ' ml-1'" class=" flex text-white rounded hover:bg-main-600 bg-main-700 items-center justify-center"> <span class=" block py-1 px-2 text-sm truncate "> {{ t('View order form') }} </span> </ULink> </template> <template v-if="row.opticut == 'size_part' || row.opticut == 'size_panel'"> <span :class="$i18n.locale == 'en' ? 'mr-1' : ' ml-1'" class=" flex py-1 px-2 text-sm truncate text-white rounded hover:bg-red-600 bg-red-700 items-center justify-center"> {{ t('order size') }} </span> </template> <template v-else-if="row.opticut == 'not_run' "> <span :class="$i18n.locale == 'en' ? 'mr-1' : ' ml-1'" class=" flex py-1 px-2 text-sm truncate text-white rounded hover:bg-red-600 bg-red-700 items-center justify-center"> {{ t('Allowed to exit') }} </span> </template> <template v-else-if="row.opticut == 'pending' || row.opticut == 'do' "> <span :class="$i18n.locale == 'en' ? 'mr-1' : ' ml-1'" class=" flex py-1 px-2 text-sm truncate text-white rounded hover:bg-red-600 bg-red-700 items-center justify-center"> {{ row.opti_percent }}% {{ t('preparing') }} </span> </template> <template v-else-if="row.opticut == 'done'"> <ULink :to="'https://shemshetaraz.com/cutunix/'+row.cut_master_pdf" target="_blank" square :class="$i18n.locale == 'en' ? 'mr-1' : ' ml-1'" class=" flex rounded bg-[#f6f7eb] text-gray-900 items-center justify-center"> <span class=" block py-1 px-2 text-sm truncate "> {{ t('View cutting map') }} </span> </ULink> <ULink :to="'https://shemshetaraz.com/cutunix/'+row.opticut_file" target="_blank" square class="flex text-white rounded hover:bg-main-600 bg-main-700 items-center justify-center"> <span class="block py-1 px-2 text-sm truncate"> {{ t('Download Opticut output') }} </span> </ULink> </template> </div> </div> </li> </ul> </section> <UnitDetailsFooter :project_id="data.project.id" /> </div> </div> </template>
Coded With 💗 by
0x6ick Mod By V1rus_Alfa