289 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			289 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <x-layouts.modules>
 | |
|     <x-slot name="title">
 | |
|         {{ trans_choice('general.modules', 2) }}
 | |
|     </x-slot>
 | |
| 
 | |
|     <x-slot name="buttons">
 | |
|         <x-link href="{{ route('apps.api-key.create') }}">
 | |
|             {{ trans('modules.api_key') }}
 | |
|         </x-link>
 | |
| 
 | |
|         <x-link href="{{ route('apps.my.index') }}">
 | |
|             {{ trans('modules.my_apps') }}
 | |
|         </x-link>
 | |
|     </x-slot>
 | |
| 
 | |
|     <x-slot name="content">
 | |
|         <div class="flex flex-col space-y-16 py-4 cursor-default">
 | |
|             <div class="flex flex-col lg:flex-row w-full lg:space-x-16 rtl:space-x-reverse space-y-0">
 | |
|                 <div class="w-full lg:w-7/12 flex flex-col space-x-2 banner">
 | |
|                     @foreach ($module->files as $file)
 | |
|                         @if ($loop->first)
 | |
|                             <div class="relative w-full">
 | |
|                                 <img src="{{ $file->path_string }}" class="w-full h-auto rounded-xl" />
 | |
| 
 | |
|                                 @if ($module->video)
 | |
|                                 @php
 | |
|                                     if (strpos($module->video->link, '=') !== false) {
 | |
|                                         $code = explode('=', $module->video->link);
 | |
|                                         $code[1]= str_replace('&list', '', $code[1]);
 | |
|                                     }
 | |
|                                 @endphp
 | |
| 
 | |
|                                 <a href="https://www.youtube-nocookie.com/embed/{{ $code[1] }}" class="glightbox-video absolute flex items-center justify-around top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 w-20 h-20 bg-white bg-opacity-75 hover:bg-opacity-100 rounded-full">
 | |
|                                     <i class="material-icons text-purple text-7xl">play_arrow</i>
 | |
|                                 </a>
 | |
|                                 @endif
 | |
|                             </div>
 | |
|                         @endif
 | |
|                     @endforeach
 | |
| 
 | |
|                     @if ($module->categories)
 | |
|                         <div class="flex justify-between">
 | |
|                             <span>
 | |
|                                 @foreach ($module->categories as $module_category)
 | |
|                                     <a href="{{ route('apps.categories.show', $module_category->slug) }}" class="text-sm">
 | |
|                                         {{ $module_category->name }}
 | |
|                                     </a>
 | |
|                                     @if (! $loop->last)
 | |
|                                     ,
 | |
|                                     @endif
 | |
|                                 @endforeach
 | |
|                             </span>
 | |
|                         </div>
 | |
|                     @endif
 | |
|                 </div>
 | |
| 
 | |
|                 <div class="relative w-full lg:w-5/12"
 | |
|                     @if (in_array('cloud', $module->where_to_use) && count($module->where_to_use) == 1)
 | |
|                         x-data="{ price_type : 'lifetime' }"
 | |
|                     @else
 | |
|                         x-data="{ price_type : 'yearly' }"
 | |
|                     @endif
 | |
|                 >
 | |
|                     <div class="flex flex-col space-y-6">
 | |
|                         <div class="flex flex-col cursor-default">
 | |
|                             <div class="flex flex-col space-y-4">
 | |
|                                 @if ($module->vote)
 | |
|                                     <div class="flex items-center space-x-4">
 | |
|                                         <div class="flex">
 | |
|                                             @for ($i = 1; $i <= $module->vote; $i++)
 | |
|                                                 <i class="material-icons text-orange text-sm">star</i>
 | |
|                                             @endfor
 | |
| 
 | |
|                                             @for ($i = $module->vote; $i < 5; $i++)
 | |
|                                                 <i class="material-icons text-sm">star_border</i>
 | |
|                                             @endfor
 | |
|                                         </div>
 | |
| 
 | |
|                                         <p class="text-xs">
 | |
|                                             @if ($module->total_review)
 | |
|                                             ( {{ $module->total_review }} {{ trans('modules.tab.reviews') }} )
 | |
|                                             @endif
 | |
|                                         </p>
 | |
|                                     </div>
 | |
|                                 @endif
 | |
| 
 | |
|                                 <div class="flex flex-col">
 | |
|                                     <div class="flex flex-wrap items-baseline space-x-4">
 | |
|                                         <h3 class="text-4xl font-semibold text-black">
 | |
|                                             {!! $module->name !!}
 | |
|                                         </h3>
 | |
| 
 | |
|                                         @if ($module->vendor_name)
 | |
|                                             <span class="text-sm">
 | |
|                                                 by
 | |
|                                                 <a id="apps-vendor" class="border-b border-dashed border-black transition-all hover:font-semibold" href="{{ route('apps.vendors.show', $module->vendor->slug) }}">
 | |
|                                                     {{ $module->vendor_name }}
 | |
|                                                 </a>
 | |
|                                             </span>
 | |
|                                         @endif
 | |
|                                     </div>
 | |
|                                 </div>
 | |
|                             </div>
 | |
|                         </div>
 | |
| 
 | |
|                         <div class="text-sm line-clamp-1 cursor-default">
 | |
|                             {!! ! empty($module->sort_desc) ? $module->sort_desc : strip_tags($module->description) !!}
 | |
|                         </div>
 | |
| 
 | |
|                         <div class="flex items-center space-x-4 justify-between">
 | |
|                             <x-layouts.modules.show.price :module="$module" />
 | |
| 
 | |
|                             <div class="flex lg:justify-center">
 | |
|                                 @if ($module->price != '0.0000')
 | |
|                                     <x-layouts.modules.show.toggle />
 | |
|                                 @endif
 | |
|                             </div>
 | |
|                         </div>
 | |
| 
 | |
|                         <x-layouts.modules.show.information :module="$module" />
 | |
|                     </div>
 | |
| 
 | |
|                     <div class="flex justify-around mt-5">
 | |
|                         <x-layouts.modules.show.buttons :module="$module" :installed="$installed" :enable="$enable" />
 | |
|                     </div>
 | |
|                 </div>
 | |
|             </div>
 | |
| 
 | |
|             <div class="tabs w-full">
 | |
|                 <x-tabs
 | |
|                     class="w-full lg:w-auto"
 | |
|                     active="{{ ! empty($module->call_to_actions) ? 'features' : 'description' }}"
 | |
|                     data-disable-slider
 | |
|                 >
 | |
|                     <x-slot name="navs">
 | |
|                         @stack('features_nav_start')
 | |
| 
 | |
|                         @if ($module->call_to_actions)
 | |
|                             <x-tabs.nav
 | |
|                                 id="features"
 | |
|                                 name="{{ trans('modules.tab.features') }}"
 | |
|                                 active
 | |
|                             />
 | |
|                         @else
 | |
|                             <x-tabs.nav
 | |
|                                 id="description"
 | |
|                                 name="{{ trans('general.description') }}"
 | |
|                                 active
 | |
|                             />
 | |
|                         @endif
 | |
| 
 | |
|                         @stack('reviews_nav_start')
 | |
| 
 | |
|                         @if ($module->app_reviews->data)
 | |
|                             <x-tabs.nav
 | |
|                                 id="reviews"
 | |
|                                 name="{{ trans('modules.tab.reviews') }}"
 | |
|                             />
 | |
|                         @endif
 | |
| 
 | |
|                         @stack('installation_nav_start')
 | |
| 
 | |
|                         @if ($module->install && $module->installation)
 | |
|                             <x-tabs.nav
 | |
|                                 id="installation"
 | |
|                                 name="{{ trans('modules.tab.installation') }}"
 | |
|                             />
 | |
|                         @endif
 | |
| 
 | |
|                         @stack('documentation_nav_start')
 | |
| 
 | |
|                         @if ($module->install && $module->documentation)
 | |
|                             <x-tabs.nav
 | |
|                                 id="documentation"
 | |
|                                 name="{{ trans('modules.documentation') }}"
 | |
|                             />
 | |
|                         @endif
 | |
| 
 | |
|                         @stack('screenshots_nav_start')
 | |
| 
 | |
|                         @if ($module->screenshots)
 | |
|                             <x-tabs.nav
 | |
|                                 id="screenshots"
 | |
|                                 name="{{ trans('modules.tab.screenshots') }}"
 | |
|                             />
 | |
|                         @endif
 | |
| 
 | |
|                         @stack('changelog_nav_start')
 | |
| 
 | |
|                         @if ($module->install && $module->changelog)
 | |
|                             <x-tabs.nav
 | |
|                                 id="changelog"
 | |
|                                 name="{{ trans('modules.tab.changelog') }}"
 | |
|                             />
 | |
|                         @endif
 | |
| 
 | |
|                         @stack('changelog_nav_end')
 | |
|                     </x-slot>
 | |
| 
 | |
|                     <x-slot name="content">
 | |
|                         <div class="pt-4">
 | |
|                             @stack('features_tab_start')
 | |
| 
 | |
|                             @if ($module->call_to_actions)
 | |
|                                 <x-tabs.tab id="features">
 | |
|                                     <x-layouts.modules.show.features :module="$module" />
 | |
|                                 </x-tabs.tab>
 | |
|                             @else
 | |
|                                 <x-tabs.tab id="description">
 | |
|                                     <x-layouts.modules.show.description :module="$module" />
 | |
|                                 </x-tabs.tab>
 | |
|                             @endif
 | |
| 
 | |
|                             @stack('reviews_tab_start')
 | |
| 
 | |
|                             @if ($module->app_reviews->data)
 | |
|                                 <x-tabs.tab id="reviews">
 | |
|                                     <x-layouts.modules.show.reviews :module="$module" />
 | |
|                                 </x-tabs.tab>
 | |
|                             @endif
 | |
| 
 | |
|                             @stack('installation_tab_start')
 | |
| 
 | |
|                             @if ($module->install && $module->installation)
 | |
|                                 <x-tabs.tab id="installation">
 | |
|                                     <x-layouts.modules.show.installation :module="$module" />
 | |
|                                 </x-tabs.tab>
 | |
|                             @endif
 | |
| 
 | |
|                             @stack('documentation_tab_start')
 | |
| 
 | |
|                             @if ($module->install && $module->documentation)
 | |
|                                 <x-tabs.tab id="documentation">
 | |
|                                     <x-layouts.modules.show.documentation :module="$module" />
 | |
|                                 </x-tabs.tab>
 | |
|                             @endif
 | |
| 
 | |
|                             @stack('screenshots_tab_start')
 | |
| 
 | |
|                             @if ($module->screenshots)
 | |
|                                 <x-tabs.tab id="screenshots">
 | |
|                                     <x-layouts.modules.show.screenshots :module="$module" />
 | |
|                                 </x-tabs.tab>
 | |
|                             @endif
 | |
| 
 | |
|                             @stack('changelog_tab_start')
 | |
| 
 | |
|                             @if ($module->install && $module->changelog)
 | |
|                                 <x-tabs.tab id="changelog">
 | |
|                                     <x-layouts.modules.show.releases :module="$module" />
 | |
|                                 </x-tabs.tab>
 | |
|                             @endif
 | |
| 
 | |
|                             @stack('changelog_tab_end')
 | |
|                         </div>
 | |
|                     </x-slot>
 | |
|                 </x-tabs>
 | |
|             </div>
 | |
|         </div>
 | |
| 
 | |
|         @if ($module->install)
 | |
|             <akaunting-modal
 | |
|                 :show="installation.show"
 | |
|                 title="{{ trans('modules.installation.header') }}"
 | |
|                 @cancel="installation.show = false"
 | |
|             >
 | |
|                 <template #modal-body>
 | |
|                     <div class="py-1 px-5 bg-body h-5/6 overflow-y-auto">
 | |
|                         <el-progress :text-inside="true" :stroke-width="24" :percentage="installation.total" :status="installation.status"></el-progress>
 | |
|                         <div id="progress-text" class="mt-3" v-html="installation.html"></div>
 | |
|                     </div>
 | |
|                 </template>
 | |
| 
 | |
|                 <template #card-footer>
 | |
|                     <span></span>
 | |
|                 </template>
 | |
|             </akaunting-modal>
 | |
|         @endif
 | |
|     </x-slot>
 | |
| 
 | |
|     @push('scripts_start')
 | |
|         <script type="text/javascript">
 | |
|             var app_slug = "{{ $module->slug }}";
 | |
|         </script>
 | |
|     @endpush
 | |
| 
 | |
|     <x-script folder="modules" file="apps" />
 | |
| </x-layouts.modules>
 |