akaunting 3.0 (the last dance)

This commit is contained in:
Burak Civan
2022-06-01 10:15:55 +03:00
parent cead09f6d4
commit d9c0764572
3812 changed files with 126831 additions and 102949 deletions

View File

@ -0,0 +1,21 @@
@if (! empty($modules) && ! empty($modules[0]))
@foreach ($modules as $item)
{!! $item !!}
@endforeach
@else
<div class="w-full lg:h-48 px-6 bg-dark-blue rounded-lg flex flex-col lg:flex-row justify-between items-center my-8">
<div class="w-full lg:w-1/2 flex flex-col self-end py-6">
<h1 class="text-lg lg:text-7xl font-semibold text-white">
{{ trans('modules.premium_banner') }}
</h1>
<a href="https://akaunting.com/plans" class="text-white transition-all hover:underline">
{{ trans('modules.learn_more') }}
</a>
</div>
<div class="hidden lg:block">
<img src="{{ asset('/public/img/akaunting-logo-gold.png') }}" class="h-40" alt="Akaunting" />
</div>
</div>
@endif

View File

@ -0,0 +1,7 @@
@if ($modules)
<x-modules.items
title="{{ trans('modules.top_free') }}"
route="apps.free"
:model="$modules"
/>
@endif

View File

@ -0,0 +1,6 @@
@if ($modules)
<x-modules.items
title="{{ trans('modules.my.installed') }}"
:model="$modules"
/>
@endif

View File

@ -0,0 +1,101 @@
<div>
<div class="overflow-hidden rounded-md">
@foreach ($module->files as $file)
<a href="{{ route('apps.app.show', $module->slug) }}">
@if (($file->media_type == 'image') && ($file->pivot->zone == 'thumbnail'))
<img src="{{ $file->path_string }}" alt="{{ $module->name }}" class="rounded-md transform transition-all hover:scale-125" />
@endif
</a>
@endforeach
</div>
<div class="flex flex-col py-2 justify-between align-bottom">
<div class="flex items-baseline justify-between">
<h4 class="w-36 truncate">
<a href="{{ route('apps.app.show', $module->slug) }}">
{!! $module->name !!}
</a>
</h4>
@if (! empty($module->subscription_type))
<span class="mr--3 float-right">
@php $subscription_color = 'bg-info'; @endphp
@if ($module->subscription_type == 'monthly')
@php $subscription_color = 'bg-warning'; @endphp
@endif
<span class="badge {{ $subscription_color }} text-white">
@if ($module->subscription_type == 'yearly')
{{ trans('modules.yearly') }}
@else
{{ trans('modules.monthly') }}
@endif
</span>
</span>
@endif
@if ($module->status_type == 'pre_sale')
<span class="mr--3 float-right">
<span class="badge bg-danger text-white">
{{ trans('modules.badge.pre_sale') }}
</span>
</span>
@endif
@if (isset($installedStatus[$module->slug]))
@php $color = 'bg-green'; @endphp
@if (!$installed[$module->slug])
@php $color = 'bg-warning'; @endphp
@endif
<span class="{{ !empty($module->subscription_type) ? 'mr-2' : 'mr--3' }} float-right">
<span class="badge {{ $color }} text-white">
{{ trans('modules.badge.installed') }}
</span>
</span>
@endif
<div class="text-xs">
@if ($module->price == '0.0000')
<span class="font-bold text-purple">
{{ trans('modules.free') }}
</span>
@else
@if (!empty($module->is_discount))
{!! trans('modules.monthly_price', ['price' => '<del class="text-danger">' . $module->yearly_per_monthly_price . '</del> ' . $module->yearly_per_monthly_special_price]) !!}
@else
{!! trans('modules.monthly_price', ['price' => $module->yearly_per_monthly_price]) !!}
@endif
@endif
</div>
</div>
<div class="flex items-baseline justify-between">
@if ($module->status_type != 'pre_sale')
<div class="flex">
@if ($module->vote > 0)
@for ($i = 1; $i <= $module->vote; $i++)
<i class="material-icons text-xs text-orange">star</i>
@endfor
@for ($i = $module->vote; $i < 5; $i++)
<i class="material-icons text-xs">star_border</i>
@endfor
@endif
</div>
<small class="text-xs">
@if ($module->total_review)
{{ $module->total_review }} {{ trans('modules.tab.reviews') }}
@endif
</small>
@else
<small class="text-sm">
{{ trans('modules.pre_sale') }}
</small>
@endif
</div>
</div>
</div>

View File

@ -0,0 +1,50 @@
<div class="py-6 font-medium">
<div class="flex items-center justify-between mb-5 lg:mb-0">
@if (! empty($title) && $title->isNotEmpty())
{!! $title !!}
@elseif ($attributes->has('title'))
<h4 class="py-3 font-medium lg:text-2xl">
{!! $attributes->get('title') !!}
</h4>
@endif
@if ($attributes->has('route'))
<div class="flex justify-center items-center group">
<a href="{{ route($attributes->get('route')) }}">
<span class="border-b border-transparent transition-all group-hover:border-black">
{{ trans('modules.see_all_type', ['type' => $attributes->get('title')]) }}
</span>
</a>
<i class="material-icons text-sm ltr:ml-1 rtl:mr-1 transform transition-all group-hover:translate-x-1">arrow_forward</i>
</div>
@endif
</div>
@if ($modules)
<div class="grid sm:grid-cols-4 grid-rows-flow gap-8" data-apps-content>
@foreach ($modules as $item)
<x-modules.item :model="$item" />
@endforeach
</div>
@if ($seeMore)
<div class="flex items-center mt-10">
<button type="button" id="button-pre-load" @click="onloadMore"
:disabled="loadMoreLoading"
class="w-48 m-auto relative flex items-center justify-center bg-green hover:bg-green-700 text-white px-6 py-1.5 text-base rounded-lg disabled:bg-green-100 js-learn-more js-button-modal-submit"
>
<i v-if="loadMoreLoading" class="animate-submit delay-[0.28s] absolute w-2 h-2 rounded-full left-0 right-0 -top-3.5 m-auto before:absolute before:w-2 before:h-2 before:rounded-full before:animate-submit before:delay-[0.14s] after:absolute after:w-2 after:h-2 after:rounded-full after:animate-submit before:-left-3.5 after:-right-3.5 after:delay-[0.42s]"></i>
<span :class="[{'opacity-0': loadMoreLoading}]">
{{ trans('modules.see_more') }}
</span>
</button>
<x-form.input.hidden name="see_more_path" value="{{ route('apps.load-more', ['type' => $type]) }}" />
<x-form.input.hidden name="see_more_alias" value="{{ request()->alias }}" />
</div>
@endif
@else
<x-modules.no-apps />
@endif
</div>

View File

@ -0,0 +1,7 @@
@if ($modules)
<x-modules.items
title="{{ trans('modules.new') }}"
route="apps.new"
:model="$modules"
/>
@endif

View File

@ -0,0 +1,44 @@
<div class="flex flex-col gap-6 mb-8">
<div class="relative w-full mb-36 lg:mb-0">
<img src="{{ asset('public/img/empty_pages/no-apps.png') }}" class="w-full" />
<div class="absolute inset-0 flex flex-col top-1/4 items-center gap-4">
<h1 class="text-xl lg:text-5xl text-center text-black font-semibold">
{{ trans('modules.no_apps_marketing') }}
</h1>
<p class="w-1/2 text-center text-black">
{{ trans('modules.no_apps') }}
</p>
<a href="{{ route('apps.home.index') }}" class="px-3 py-1 bg-green rounded-md text-white">
{{ trans('modules.see_all') }}
</a>
</div>
</div>
<div class="flex flex-col lg:flex-row col-span-3 gap-y-8 gap-x-12 ltr:pl-8 rtl:pr-8 my-8">
@foreach ($modules as $item)
<div>
<div class="relative right-10 bottom-4">
<i class="absolute material-icons text-purple transform rotate-180 text-7xl">format_quote</i>
</div>
<div class="flex flex-col gap-y-6">
<p class="font-semibold text-sm text-left leading-loose">
{!! nl2br($item->text) !!}
</p>
<div class="flex place-items-center">
<img src="{{ $item->thumb }}" class="w-12 h-12 object-cover" />
<div class="flex flex-col ltr:ml-2 rtl:mr-2">
<span>{{ $item->author }}</span>
<span class="font-thin">{{ $item->country }}</span>
</div>
</div>
</div>
</div>
@endforeach
</div>
</div>

View File

@ -0,0 +1,7 @@
@if ($modules)
<x-modules.items
title="{{ trans('modules.top_paid') }}"
route="apps.paid"
:model="$modules"
/>
@endif

View File

@ -0,0 +1,7 @@
@if ($modules)
<x-modules.items
title="{{ trans('modules.pre_sale') }}"
route="apps.pre_sale"
:model="$modules"
/>
@endif

View File

@ -0,0 +1,6 @@
@if ($modules)
<x-modules.items
title="{{ trans('modules.my.purchased') }}"
:model="$modules"
/>
@endif

View File

@ -0,0 +1,3 @@
@foreach ($modules as $item)
<x-modules.item :model="$item" />
@endforeach