Ngiler SH3LL 360
Home
Information
Create File
Create Folder
:
/
home
/
tbf
/
tbfguest.tbf.ro
/
src
/
views
/
public
/
Information Server
MySQL :
OFF
Perl :
OFF
CURL :
ON
WGET :
OFF
PKEXEC :
OFF
Directive
Local Value
IP Address
89.40.16.97
System
Linux server.atelieruldeit.ro 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64
User
tbf
PHP Version
7.3.33
Software
Apache
Doc root
Writable
close
Edit File :
Home.vue
| Size :
13.92
KB
Copy
<!-- @format --> <template> <Transition enter-active-class="ease-out duration-500" enter-from-class="opacity-0" enter-to-class="opacity-100" leave-active-class="ease-in duration-200" leave-from-class="opacity-100" leave-to-class="opacity-0"> <div class="min-h-screen flex flex-col"> <div class="px-16 pt-12 pb-10 border-b border-gray-200 flex items-center justify-between bg-white"> <div> <h2 class="text-base font-semibold leading-7 text-gray-900">Home</h2> <p class="mt-1 text-sm leading-6 text-gray-600">Mai jos vezi toate secțiunile la care ai acces pentru pregătirea Zilelor TBF de implementare</p> </div> <div class="relative"> <button @click="openTutorial" class="p-2 bg-blue-500 hover:bg-blue-400 rounded-full text-white"> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-6 h-6"> <path stroke-linecap="round" stroke-linejoin="round" d="M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z" /> </svg> </button> <transition enter-active-class="transition-all ease-out duration-150 origin-top" enter-from-class="opacity-0 scale-75" enter-to-class="opacity-100 scale-105" leave-active-class="transition-all ease-in duration-75 origin-top" leave-from-class="opacity-100 scale-105" leave-to-class="opacity-0 scale-75"> <div v-if="tutorialPopover" class="absolute top-[100%] scal translate-y-3 -right-5 w-[15rem] p-4 rounded-lg text-sm text-center text-white bg-blue-400 shadow-sm transition-all duration-150"> <div class="relative"> <div class="w-3 h-3 bg-blue-400 absolute -top-5 right-[1.1rem] rotate-45"></div> </div> <div class="p-3 bg-white/20 text-white rounded-full inline-block"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="w-6 h-6"> <path fill-rule="evenodd" d="M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z" clip-rule="evenodd" /> </svg> </div> <h3 class="mt-2 font-semibold text-base text-center">Atenție</h3> <p class="mt-2 text-center">Urmărește acest video cu instrucțiuni înainte să completezi pagina</p> <button @click="openTutorial" type="button" class="mt-5 mb-0.5 w-full text-center rounded-full px-7 py-2 text-sm font-semibold focus-visible:outline-none bg-white text-blue-500 hover:text-blue-400"> Vezi video </button> </div> </transition> </div> </div> <div class="pb-20 pt-10 px-16 bg-gray-50 space-y-10 divide-y divide-gray-900/10 grow"> <ul role="list" class="grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4"> <li v-for="moduleItem in modules" class="col-span-1 flex flex-col divide-y divide-gray-200 rounded-lg bg-white text-center shadow"> <div class="flex flex-1 flex-col p-8"> <div :class="[moduleItem.active ? moduleItem.class : 'bg-gray text-gray-400 ring-gray-200']" class="mx-auto w-32 h-32 flex-shrink-0 rounded-full ring-1 ring-inset grid place-content-center text-3xl" v-html="moduleItem.icon"></div> <h3 :class="moduleItem.active ? 'text-gray-900' : 'text-gray-400'" class="mt-6 text-sm font-medium">{{ moduleItem.name }}</h3> <dl class="mt-1 flex flex-grow flex-col justify-between"> <dd :class="moduleItem.active ? 'text-gray-500' : 'text-gray-400'" class="text-sm">{{ moduleItem.title }}</dd> </dl> </div> <div> <div class="-mt-px flex divide-x divide-gray-200"> <div class="flex w-0 flex-1"> <button @click="moduleItem.active ? $router.push({ name: moduleItem.href }) : ''" :class="moduleItem.active ? 'text-gray-900 hover:text-blue-500' : 'text-gray-300 cursor-not-allowed'" class="relative inline-flex w-0 flex-1 items-center justify-center gap-x-3 rounded-bl-lg border border-transparent py-4 text-sm font-semibold group"> <svg :class="moduleItem.active ? 'text-gray-400 group-hover:text-blue-500' : 'text-gray-300'" class="h-5 w-5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true"> <path stroke-width="1.5" vector-effect="non-scaling-stroke" stroke-linecap="round" stroke-linejoin="round" d="M13.19 8.688a4.5 4.5 0 011.242 7.244l-4.5 4.5a4.5 4.5 0 01-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 00-6.364-6.364l-4.5 4.5a4.5 4.5 0 001.242 7.244" /> </svg> <Popper hover :openDelay="200" offsetDistance="10" placement="top" :disabled="moduleItem.active ? true : false"> Accesează <template #content> <div role="tooltip" class="bg-gray-900 shadow-sm ring-1 ring-gray-900/5 rounded-lg px-4 py-3 text-white text-xs relative max-w-[15rem]"> <p class="whitespace-normal" v-if="moduleItem.help == 'instructions_company'">Accesibil doar pentru administratori</p> <p class="whitespace-normal" v-else-if="moduleItem.help == 'instructions_responsibilities'">Accesibil doar în timpul zilei responsabilităților</p> <p class="whitespace-normal" v-else-if="moduleItem.help == 'instructions_procedures'">Accesibil doar în timpul zilei procedurilor</p> <p class="whitespace-normal" v-else-if="moduleItem.help == 'instructions_recruitments'">Accesibil doar în timpul zilei recrutărilor</p> <p class="whitespace-normal" v-else-if="moduleItem.help == 'instructions_sales'">Accesibil doar în timpul zilei vânzărilor</p> </div> </template> </Popper> </button> </div> <div class="-ml-px flex w-0 flex-1" :class="[{ 'cursor-not-allowed': !moduleItem.active }]"> <button @click="moduleItem.active ? openMail() : ''" :class="moduleItem.active ? 'text-gray-900 hover:text-blue-500' : 'text-gray-300 cursor-not-allowed'" class="relative inline-flex w-0 flex-1 items-center justify-center gap-x-3 rounded-br-lg border border-transparent py-4 text-sm font-semibold group"> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" :class="moduleItem.active ? 'text-gray-400 group-hover:text-blue-500' : 'text-gray-300'" class="h-5 w-5"> <path stroke-width="1.5" vector-effect="non-scaling-stroke" stroke-linecap="round" stroke-linejoin="round" d="M21.75 6.75v10.5a2.25 2.25 0 01-2.25 2.25h-15a2.25 2.25 0 01-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0019.5 4.5h-15a2.25 2.25 0 00-2.25 2.25m19.5 0v.243a2.25 2.25 0 01-1.07 1.916l-7.5 4.615a2.25 2.25 0 01-2.36 0L3.32 8.91a2.25 2.25 0 01-1.07-1.916V6.75" /> </svg> <Popper hover :openDelay="200" offsetDistance="10" placement="top" :disabled="moduleItem.active ? true : false"> Ajutor <template #content> <div role="tooltip" class="bg-gray-900 shadow-sm ring-1 ring-gray-900/5 rounded-lg px-4 py-3 text-white text-xs relative max-w-[15rem]"> <p class="whitespace-normal" v-if="moduleItem.help == 'instructions_company'">Accesibil doar pentru administratori</p> <p class="whitespace-normal" v-else-if="moduleItem.help == 'instructions_responsibilities'">Accesibil doar în timpul zilei responsabilităților</p> <p class="whitespace-normal" v-else-if="moduleItem.help == 'instructions_procedures'">Accesibil doar în timpul zilei procedurilor</p> <p class="whitespace-normal" v-else-if="moduleItem.help == 'instructions_recruitments'">Accesibil doar în timpul zilei recrutărilor</p> <p class="whitespace-normal" v-else-if="moduleItem.help == 'instructions_sales'">Accesibil doar în timpul zilei vânzărilor</p> </div> </template> </Popper> </button> </div> </div> </div> </li> </ul> </div> </div> </Transition> </template> <script> import { useModalsStore } from "@/stores/modals.js"; import { useCookies } from "vue3-cookies"; export default { setup() { const { cookies } = useCookies(); return { cookies }; }, components: {}, data() { return { modules: [], tutorialPopover: false, realTimeModals: useModalsStore(), }; }, mounted() { if (this.$auth.check({ role: "employee" })) { this.$router.push({ name: "positions" }); } this.modules = [ { name: "Companie", title: "Descrierea companiei tale", class: "text-blue-500 bg-blue-50 ring-blue-700/20", letter: "C", icon: `<svg class="h-10 w-10 shrink-0" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-width="1.5" vector-effect="non-scaling-stroke" stroke-linecap="round" stroke-linejoin="round" d="M9 12.75L11.25 15 15 9.75m-3-7.036A11.959 11.959 0 013.598 6 11.99 11.99 0 003 9.749c0 5.592 3.824 10.29 9 11.623 5.176-1.332 9-6.03 9-11.622 0-1.31-.21-2.571-.598-3.751h-.152c-3.196 0-6.1-1.248-8.25-3.285z" /></svg>`, href: "company", help: "instructions_company", active: ["admin", "super_admin"].includes(this.$auth.user().rights.role) ? true : false, }, { name: "Responsabilități", title: "Plătește oamenii corect pe rezultate", class: "text-purple-500 bg-purple-50 ring-purple-700/20", letter: "R", icon: `<svg class="h-10 w-10 shrink-0" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" ariaHidden="true"><path vector-effect="non-scaling-stroke" strokeWidth="1.5" stroke-linecap="round" stroke-linejoin="round" d="M6 13.5V3.75m0 9.75a1.5 1.5 0 010 3m0-3a1.5 1.5 0 000 3m0 3.75V16.5m12-3V3.75m0 9.75a1.5 1.5 0 010 3m0-3a1.5 1.5 0 000 3m0 3.75V16.5m-6-9V3.75m0 3.75a1.5 1.5 0 010 3m0-3a1.5 1.5 0 000 3m0 9.75V10.5"/></svg>`, href: "positions", help: "instructions_responsibilities", active: this.$auth.user().rights.enable_management ? true : false, }, { name: "Proceduri", title: "Elimină greșelile și crește productivitatea", class: "text-green-500 bg-green-50 ring-green-700/20", letter: "P", icon: `<svg class="h-10 w-10 shrink-0" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" ariaHidden="true"><path stroke-linecap="round" vector-effect="non-scaling-stroke" strokeWidth="1.5" stroke-linejoin="round" d="M8.25 6.75h12M8.25 12h12m-12 5.25h12M3.75 6.75h.007v.008H3.75V6.75zm.375 0a.375.375 0 11-.75 0 .375.375 0 01.75 0zM3.75 12h.007v.008H3.75V12zm.375 0a.375.375 0 11-.75 0 .375.375 0 01.75 0zm-.375 5.25h.007v.008H3.75v-.008zm.375 0a.375.375 0 11-.75 0 .375.375 0 01.75 0z"/></svg>`, href: "positions", help: "instructions_procedures", active: this.$auth.user().rights.enable_management ? true : false, }, { name: "Recrutări", title: "Procese complete și eficiente de recrutări", class: "text-yellow-500 bg-yellow-50 ring-yellow-700/20", letter: "R", icon: `<svg class="h-10 w-10 shrink-0" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true"><path vector-effect="non-scaling-stroke" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" d="M18 18.72a9.094 9.094 0 003.741-.479 3 3 0 00-4.682-2.72m.94 3.198l.001.031c0 .225-.012.447-.037.666A11.944 11.944 0 0112 21c-2.17 0-4.207-.576-5.963-1.584A6.062 6.062 0 016 18.719m12 0a5.971 5.971 0 00-.941-3.197m0 0A5.995 5.995 0 0012 12.75a5.995 5.995 0 00-5.058 2.772m0 0a3 3 0 00-4.681 2.72 8.986 8.986 0 003.74.477m.94-3.197a5.971 5.971 0 00-.94 3.197M15 6.75a3 3 0 11-6 0 3 3 0 016 0zm6 3a2.25 2.25 0 11-4.5 0 2.25 2.25 0 014.5 0zm-13.5 0a2.25 2.25 0 11-4.5 0 2.25 2.25 0 014.5 0z"/></svg>`, href: "positions", help: "instructions_recruitments", active: this.$auth.user().rights.enable_management ? true : false, }, { name: "Vânzări", title: "Proces complet de vânzări", class: "text-pink-500 bg-pink-50 ring-pink-700/20", letter: "V", icon: `<svg class="h-10 w-10 shrink-0" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-width="1.5" vector-effect="non-scaling-stroke" stroke-linecap="round" stroke-linejoin="round" d="M2.25 18.75a60.07 60.07 0 0115.797 2.101c.727.198 1.453-.342 1.453-1.096V18.75M3.75 4.5v.75A.75.75 0 013 6h-.75m0 0v-.375c0-.621.504-1.125 1.125-1.125H20.25M2.25 6v9m18-10.5v.75c0 .414.336.75.75.75h.75m-1.5-1.5h.375c.621 0 1.125.504 1.125 1.125v9.75c0 .621-.504 1.125-1.125 1.125h-.375m1.5-1.5H21a.75.75 0 00-.75.75v.75m0 0H3.75m0 0h-.375a1.125 1.125 0 01-1.125-1.125V15m1.5 1.5v-.75A.75.75 0 003 15h-.75M15 10.5a3 3 0 11-6 0 3 3 0 016 0zm3 0h.008v.008H18V10.5zm-12 0h.008v.008H6V10.5z" /></svg>`, href: "sales", help: "instructions_sales", active: this.$auth.user().rights.enable_sales ? true : false, }, ]; var cookieModalVimeoData = this.cookies.get("modal_vimeo"); if (!(cookieModalVimeoData && JSON.parse(cookieModalVimeoData).includes("homepage"))) { setTimeout(() => { this.tutorialPopover = true; }, 1000); } }, methods: { openMail() { window.location.href = "mailto:contact@tbf.ro"; }, openTutorial() { var arrayPages = this.cookies.get("modal_vimeo") ? JSON.parse(this.cookies.get("modal_vimeo")) : []; if (!arrayPages.includes("homepage")) { arrayPages.push("homepage"); this.cookies.set("modal_vimeo", JSON.stringify(arrayPages), "30d"); } this.tutorialPopover = false; this.realTimeModals.toggleShowModal("modal_video_vimeo", { videoId: "870571769" }); }, }, }; </script>
Back