akaunting 3.0 (the last dance)
This commit is contained in:
@ -1,38 +1,35 @@
|
||||
@extends('layouts.modules')
|
||||
<x-layouts.modules>
|
||||
<x-slot name="title">
|
||||
{{ trans('modules.api_key') }}
|
||||
</x-slot>
|
||||
|
||||
@section('title', trans('modules.api_key'))
|
||||
<x-slot name="buttons">
|
||||
<x-link href="{{ route('apps.api-key.create') }}">
|
||||
{{ trans('modules.api_key') }}
|
||||
</x-link>
|
||||
|
||||
@section('content')
|
||||
<div class="card">
|
||||
{!! Form::open([
|
||||
'route' => 'apps.api-key.store',
|
||||
'id' => 'form-app',
|
||||
'@submit.prevent' => 'onSubmit',
|
||||
'files' => true,
|
||||
'role' => 'form',
|
||||
'class' => 'form-loading-button'
|
||||
]) !!}
|
||||
<x-link href="{{ route('apps.my.index') }}">
|
||||
{{ trans('modules.my_apps') }}
|
||||
</x-link>
|
||||
</x-slot>
|
||||
|
||||
<div class="card-body">
|
||||
<div class="row">
|
||||
{{ Form::textGroup('api_key', trans('modules.api_key'), 'key', ['required' => 'required', 'placeholder' => trans('general.form.enter', ['field' => trans('modules.api_key')])], setting('apps.api_key', null), 'col-sm-12') }}
|
||||
<x-slot name="content" without-bar>
|
||||
<x-form id="form-app" route="apps.api-key.store">
|
||||
<div class="w-1/2">
|
||||
<div class="py-8 flex flex-col gap-2">
|
||||
<x-form.group.text name="api_key" placeholder="{{ trans('general.form.enter', ['field' => trans('modules.api_key')]) }}" value="{{ setting('apps.api_key', null) }}" />
|
||||
|
||||
<div class="col-sm-12">
|
||||
<small>{!! trans('modules.get_api_key', ['url' => 'https://akaunting.com/dashboard']) !!}</small>
|
||||
<div class="text-xs">
|
||||
{!! trans('modules.get_api_key', ['url' => 'https://akaunting.com/dashboard']) !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-footer">
|
||||
<div class="row save-buttons">
|
||||
{{ Form::saveButtons('apps.home.index') }}
|
||||
<div>
|
||||
<x-form.buttons cancel-route="apps.home.index" without-cancel />
|
||||
</div>
|
||||
</div>
|
||||
</x-form>
|
||||
</x-slot>
|
||||
|
||||
{!! Form::close() !!}
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('scripts_start')
|
||||
<script src="{{ asset('public/js/modules/apps.js?v=' . version('short')) }}"></script>
|
||||
@endpush
|
||||
<x-script folder="modules" file="apps" />
|
||||
</x-layouts.modules>
|
||||
|
@ -1,72 +1,29 @@
|
||||
@extends('layouts.modules')
|
||||
<x-layouts.modules>
|
||||
<x-slot name="title">
|
||||
{{ trans_choice('general.modules', 2) }}
|
||||
</x-slot>
|
||||
|
||||
@section('title', trans_choice('general.modules', 2))
|
||||
<x-slot name="buttons">
|
||||
<x-link href="{{ route('apps.api-key.create') }}">
|
||||
{{ trans('modules.api_key') }}
|
||||
</x-link>
|
||||
|
||||
@section('new_button')
|
||||
<a href="{{ route('apps.api-key.create') }}" class="btn btn-white btn-sm">{{ trans('modules.api_key') }}</a>
|
||||
<a href="{{ route('apps.my.index') }}" class="btn btn-white btn-sm">{{ trans('modules.my_apps') }}</a>
|
||||
@endsection
|
||||
<x-link href="{{ route('apps.my.index') }}">
|
||||
{{ trans('modules.my_apps') }}
|
||||
</x-link>
|
||||
</x-slot>
|
||||
|
||||
@section('content')
|
||||
@include('partials.modules.bar')
|
||||
<x-slot name="content">
|
||||
<x-modules.banners />
|
||||
|
||||
@if ($pre_sale)
|
||||
<h2>{{ trans('modules.pre_sale') }}</h2>
|
||||
<x-modules.pre-sale />
|
||||
|
||||
<div class="row">
|
||||
@if ($pre_sale->data)
|
||||
@foreach ($pre_sale->data as $module)
|
||||
@include('partials.modules.pre_sale')
|
||||
@endforeach
|
||||
@else
|
||||
@include('partials.modules.no_apps')
|
||||
@endif
|
||||
</div>
|
||||
@endif
|
||||
<x-modules.paid />
|
||||
|
||||
@if ($paid)
|
||||
<h2>{{ trans('modules.top_paid') }}</h2>
|
||||
<x-modules.nnew />
|
||||
|
||||
<div class="row">
|
||||
@if ($paid->data)
|
||||
@foreach ($paid->data as $module)
|
||||
@include('partials.modules.item')
|
||||
@endforeach
|
||||
@else
|
||||
@include('partials.modules.no_apps')
|
||||
@endif
|
||||
</div>
|
||||
@endif
|
||||
<x-modules.free />
|
||||
</x-slot>
|
||||
|
||||
@if ($new)
|
||||
<h2>{{ trans('modules.new') }}</h2>
|
||||
|
||||
<div class="row">
|
||||
@if ($new->data)
|
||||
@foreach ($new->data as $module)
|
||||
@include('partials.modules.item')
|
||||
@endforeach
|
||||
@else
|
||||
@include('partials.modules.no_apps')
|
||||
@endif
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if ($free)
|
||||
<h2>{{ trans('modules.top_free') }}</h2>
|
||||
|
||||
<div class="row">
|
||||
@if ($free->data)
|
||||
@foreach ($free->data as $module)
|
||||
@include('partials.modules.item')
|
||||
@endforeach
|
||||
@else
|
||||
@include('partials.modules.no_apps')
|
||||
@endif
|
||||
</div>
|
||||
@endif
|
||||
@endsection
|
||||
|
||||
@push('scripts_start')
|
||||
<script src="{{ asset('public/js/modules/apps.js?v=' . version('short')) }}"></script>
|
||||
@endpush
|
||||
<x-script folder="modules" file="apps" />
|
||||
</x-layouts.modules>
|
||||
|
@ -1,42 +1,35 @@
|
||||
@extends('layouts.modules')
|
||||
<x-layouts.modules>
|
||||
<x-slot name="title">
|
||||
{{ trans('modules.documentation') }}
|
||||
</x-slot>
|
||||
|
||||
@section('title', trans_choice('general.modules', 2))
|
||||
<x-slot name="buttons">
|
||||
<x-link href="{{ route('apps.api-key.create') }}">
|
||||
{{ trans('modules.api_key') }}
|
||||
</x-link>
|
||||
|
||||
@section('new_button')
|
||||
<a href="{{ route('apps.api-key.create') }}" class="btn btn-white btn-sm">{{ trans('modules.api_key') }}</a>
|
||||
<a href="{{ route('apps.my.index') }}" class="btn btn-white btn-sm">{{ trans('modules.my_apps') }}</a>
|
||||
@endsection
|
||||
<x-link href="{{ route('apps.my.index') }}">
|
||||
{{ trans('modules.my_apps') }}
|
||||
</x-link>
|
||||
</x-slot>
|
||||
|
||||
@section('content')
|
||||
@include('partials.modules.bar')
|
||||
<x-slot name="content">
|
||||
<div>
|
||||
<div class="app-documentation flex flex-col gap-4 py-4">
|
||||
@if ($documentation)
|
||||
{!! $documentation->body !!}
|
||||
@else
|
||||
<x-empty-data />
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body documentation-content">
|
||||
@if ($documentation)
|
||||
{!! $documentation->body !!}
|
||||
@else
|
||||
{{ trans('general.na') }}
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div class="card-footer">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<a href="{{ url($back) }}" class="btn btn-white">{{ trans('modules.back') }}</a>
|
||||
</div>
|
||||
<div class="flex flex-end">
|
||||
<x-link href="{{ url($back) }}" class="px-6 py-1.5 hover:bg-gray-200 rounded-lg bg-light-gray">
|
||||
{{ trans('modules.back') }}
|
||||
</x-link>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
</x-slot>
|
||||
|
||||
@push('stylesheet')
|
||||
<style>
|
||||
.documentation-content img {
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
||||
@endpush
|
||||
|
||||
@push('scripts_start')
|
||||
<script src="{{ asset('public/js/modules/apps.js?v=' . version('short')) }}"></script>
|
||||
@endpush
|
||||
<x-script folder="modules" file="apps" />
|
||||
</x-layouts.modules>
|
||||
|
@ -1,166 +1,177 @@
|
||||
@extends('layouts.modules')
|
||||
<x-layouts.modules>
|
||||
<x-slot name="title">
|
||||
{{ trans_choice('general.modules', 2) }}
|
||||
</x-slot>
|
||||
|
||||
@section('title', trans_choice('general.modules', 2))
|
||||
<x-slot name="buttons">
|
||||
<x-link href="{{ route('apps.api-key.create') }}">
|
||||
{{ trans('modules.api_key') }}
|
||||
</x-link>
|
||||
|
||||
@section('new_button')
|
||||
<a href="{{ route('apps.api-key.create') }}" class="btn btn-white btn-sm">{{ trans('modules.api_key') }}</a>
|
||||
<a href="{{ route('apps.my.index') }}" class="btn btn-white btn-sm">{{ trans('modules.my_apps') }}</a>
|
||||
@endsection
|
||||
<x-link href="{{ route('apps.my.index') }}">
|
||||
{{ trans('modules.my_apps') }}
|
||||
</x-link>
|
||||
</x-slot>
|
||||
|
||||
@section('content')
|
||||
@include('partials.modules.bar')
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-8">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-12">
|
||||
<div class="float-left">
|
||||
<h3>{{ $module->name }}</h3>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane fade show active" id="description">
|
||||
{!! $module->description !!}
|
||||
|
||||
@if ($module->screenshots || $module->video)
|
||||
<akaunting-carousel :name="'{{ $module->name }}'" :height="'430px'" arrow="always"
|
||||
<x-slot name="content">
|
||||
<div class="flex flex-col gap-16 py-4">
|
||||
<div class="flex flex-col lg:flex-row w-full gap-8 lg:gap-16">
|
||||
<div class="w-full lg:w-7/12 flex flex-col gap-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
|
||||
:video="'{{ $code[1] }}'"
|
||||
@endif
|
||||
:screenshots="{{ json_encode($module->screenshots) }}">
|
||||
</akaunting-carousel>
|
||||
@endif
|
||||
@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) }}">{{ $module_category->name }}</a> </br>
|
||||
@endforeach
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<h3>{{ trans_choice('general.actions', 1) }}</h3>
|
||||
<div class="w-full lg:w-5/12 flex flex-col justify-between">
|
||||
<div class="flex flex-col gap-6">
|
||||
<div class="flex flex-col">
|
||||
<div class="flex flex-col gap-4">
|
||||
@if ($module->vote)
|
||||
<div class="flex items-center gap-4">
|
||||
<div class="flex">
|
||||
@for ($i = 1; $i <= $module->vote; $i++)
|
||||
<i class="material-icons text-orange text-sm">star</i>
|
||||
@endfor
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<akaunting-countdown id="countdown-pre-sale"
|
||||
:year="{{ (int) $module->pre_sale_date->year }}"
|
||||
:month="{{ (int) $module->pre_sale_date->month - 1 }}"
|
||||
:date="{{ (int) $module->pre_sale_date->day }}"
|
||||
></akaunting-countdown>
|
||||
</div>
|
||||
</div>
|
||||
@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="card">
|
||||
<div class="card-body">
|
||||
<div class="text-center">
|
||||
<strong>
|
||||
<div class="text-xl">
|
||||
<div class="flex flex-col gap-1">
|
||||
<div class="flex gap-4 items-baseline">
|
||||
<h3 class="text-4xl font-semibold text-black">{{ $module->name }}</h3>
|
||||
|
||||
@if ($module->vendor_name)
|
||||
<span class="text-sm"> by <a 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>
|
||||
|
||||
@if ($module->version)
|
||||
<div class="text-xs">
|
||||
<span>{{ trans('footer.version') }} {{ $module->version }}</span>
|
||||
|
||||
@if ($module->updated_at)
|
||||
<span> ( {{ trans('modules.updated') }} {{ Date::parse($module->updated_at)->diffForHumans() }} )</span>
|
||||
@endif
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div
|
||||
class="text-sm whitespace-normal truncate line-clamp-3"
|
||||
>
|
||||
{!! $module->description !!}
|
||||
</div>
|
||||
|
||||
<div class="flex items-baseline">
|
||||
<span class="text-5xl font-bold text-purple">
|
||||
@if ($module->price == '0.0000')
|
||||
{{ trans('modules.free') }}
|
||||
@else
|
||||
{!! $module->price_prefix !!}
|
||||
|
||||
@if (isset($module->special_price))
|
||||
<del class="text-danger">{{ $module->price }}</del>
|
||||
{{ $module->special_price }}
|
||||
@else
|
||||
{{ $module->price }}
|
||||
@endif
|
||||
@if (isset($module->special_price))
|
||||
<del>{{ $module->price }}</del>
|
||||
{{ $module->special_price }}
|
||||
@else
|
||||
{{ $module->price }}
|
||||
@endif
|
||||
{!! $module->price_suffix !!}
|
||||
@endif
|
||||
</div>
|
||||
</strong>
|
||||
</span>
|
||||
|
||||
<span class="text-sm mb-0"> / {{ trans('modules.billed_yearly') }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col mt-5">
|
||||
@can('create-modules-item')
|
||||
@if ($module->install)
|
||||
<x-tooltip id="tooltip-countdown-install" placement="bottom" message="{{ trans('modules.pre_sale_install') }}">
|
||||
<x-button
|
||||
kind="primary"
|
||||
override="class"
|
||||
class="w-full px-3 py-1.5 mb-3 sm:mb-0 rounded-xl text-sm text-white font-medium leading-6 cursor-default bg-green hover:bg-green-700 disabled:bg-gray-50"
|
||||
>
|
||||
<akaunting-countdown id="countdown-pre-sale"
|
||||
:year="{{ (int) $module->pre_sale_date->year }}"
|
||||
:month="{{ (int) $module->pre_sale_date->month - 1 }}"
|
||||
:date="{{ (int) $module->pre_sale_date->day }}"
|
||||
></akaunting-countdown>
|
||||
</x-button>
|
||||
</x-tooltip>
|
||||
@else
|
||||
<x-tooltip id="tooltip-countdown-uninstall" placement="bottom" message="{{ trans('modules.pre_sale_uninstall') }}">
|
||||
<x-link
|
||||
href="/"
|
||||
kind="primary"
|
||||
override="class"
|
||||
class="w-full flex items-center justify-center px-3 py-1.5 mb-3 sm:mb-0 rounded-xl text-sm font-medium leading-6 bg-green hover:bg-green-700 text-white disabled:bg-green-100"
|
||||
>
|
||||
<akaunting-countdown id="countdown-pre-sale"
|
||||
:year="{{ (int) $module->pre_sale_date->year }}"
|
||||
:month="{{ (int) $module->pre_sale_date->month - 1 }}"
|
||||
:date="{{ (int) $module->pre_sale_date->day }}"
|
||||
></akaunting-countdown>
|
||||
</x-link>
|
||||
</x-tooltip>
|
||||
@endif
|
||||
@endcan
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card-footer">
|
||||
@can('create-modules-item')
|
||||
@if ($module->install)
|
||||
<a href="javascript:void(0)" class="btn btn-warning btn-block" disabled="disabled">
|
||||
{{ trans('modules.pre_sale') }}
|
||||
</a>
|
||||
@else
|
||||
<a href="{{ $module->action_url }}" class="btn btn-warning btn-block" target="_blank">
|
||||
{{ trans('modules.pre_sale') }}
|
||||
</a>
|
||||
@endif
|
||||
@endcan
|
||||
|
||||
@if (!empty($module->purchase_desc))
|
||||
<div class="text-center mt-3">
|
||||
{!! $module->purchase_desc !!}
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h3>{{ trans('modules.about') }}</h3>
|
||||
|
||||
<div class="card">
|
||||
<table class="table">
|
||||
<tbody>
|
||||
@if ($module->vendor_name)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans_choice('general.developers', 1) }}</th>
|
||||
<td class="col-7 text-right"><a href="{{ route('apps.vendors.show', $module->vendor->slug) }}">{{ $module->vendor_name }}</a></td>
|
||||
</tr>
|
||||
@endif
|
||||
@if ($module->version)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans('footer.version') }}</th>
|
||||
<td class="col-7 text-right">{{ $module->version }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
@if ($module->created_at)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans('modules.added') }}</th>
|
||||
<td class="col-7 text-right long-texts">@date($module->created_at)</td>
|
||||
</tr>
|
||||
@endif
|
||||
@if ($module->updated_at)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans('modules.updated') }}</th>
|
||||
<td class="col-7 text-right">{{ Date::parse($module->updated_at)->diffForHumans() }}</td>
|
||||
</tr>
|
||||
@endif
|
||||
@if ($module->categories)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans_choice('general.categories', (count($module->categories) > 1) ? 2 : 1) }}</th>
|
||||
<td class="col-7 text-right">
|
||||
@foreach ($module->categories as $module_category)
|
||||
<a href="{{ route('apps.categories.show', $module_category->slug) }}">{{ $module_category->name }}</a> </br>
|
||||
@endforeach
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@if ($module->purchase_faq)
|
||||
<akaunting-modal :show="faq" modal-dialog-class="max-w-screen-md">
|
||||
<template #modal-content>
|
||||
{!! $module->purchase_faq !!}
|
||||
</template>
|
||||
</akaunting-modal>
|
||||
@endif
|
||||
</x-slot>
|
||||
|
||||
@if ($module->purchase_faq)
|
||||
<akaunting-modal :show="faq" modal-dialog-class="modal-md">
|
||||
<template #modal-content>
|
||||
{!! $module->purchase_faq !!}
|
||||
</template>
|
||||
</akaunting-modal>
|
||||
@endif
|
||||
@endsection
|
||||
@push('scripts_start')
|
||||
<script type="text/javascript">
|
||||
var app_slug = "{{ $module->slug }}";
|
||||
</script>
|
||||
@endpush
|
||||
|
||||
@push('scripts_start')
|
||||
<script type="text/javascript">
|
||||
var app_slug = "{{ $module->slug }}";
|
||||
</script>
|
||||
|
||||
<script src="{{ asset('public/js/modules/item.js?v=' . version('short')) }}"></script>
|
||||
@endpush
|
||||
<x-script folder="modules" file="apps" />
|
||||
</x-layouts.modules>
|
||||
|
@ -1,382 +1,278 @@
|
||||
@extends('layouts.modules')
|
||||
<x-layouts.modules>
|
||||
<x-slot name="title">
|
||||
{{ trans_choice('general.modules', 2) }}
|
||||
</x-slot>
|
||||
|
||||
@section('title', trans_choice('general.modules', 2))
|
||||
<x-slot name="buttons">
|
||||
<x-link href="{{ route('apps.api-key.create') }}">
|
||||
{{ trans('modules.api_key') }}
|
||||
</x-link>
|
||||
|
||||
@section('new_button')
|
||||
<a href="{{ route('apps.api-key.create') }}" class="btn btn-white btn-sm">{{ trans('modules.api_key') }}</a>
|
||||
<a href="{{ route('apps.my.index') }}" class="btn btn-white btn-sm">{{ trans('modules.my_apps') }}</a>
|
||||
@endsection
|
||||
<x-link href="{{ route('apps.my.index') }}">
|
||||
{{ trans('modules.my_apps') }}
|
||||
</x-link>
|
||||
</x-slot>
|
||||
|
||||
@section('content')
|
||||
@include('partials.modules.bar')
|
||||
<x-slot name="content">
|
||||
<div class="flex flex-col space-y-16 py-4">
|
||||
<div class="flex flex-col lg:flex-row w-full space-x-16 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" />
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-8">
|
||||
<div class="row">
|
||||
<div class="col-xs-6 col-sm-6">
|
||||
<div class="float-left">
|
||||
<h3>{!! $module->name !!}</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-6 col-sm-6">
|
||||
<div class="float-right">
|
||||
@for($i = 1; $i <= $module->vote; $i++)
|
||||
<i class="fa fa-star fa-sm text-yellow"></i>
|
||||
@endfor
|
||||
|
||||
@for($i = $module->vote; $i < 5; $i++)
|
||||
<i class="fa fa-star-o fa-sm"></i>
|
||||
@endfor
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="nav-wrapper pt-0">
|
||||
<ul class="nav nav-pills nav-fill flex-column flex-md-row" id="tabs-icons-text" role="tablist">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link mb-sm-2 mb-md-0 active" href="#description" data-toggle="tab" aria-selected="false">
|
||||
{{ trans('general.description') }}
|
||||
</a>
|
||||
</li>
|
||||
|
||||
@if ($module->installation)
|
||||
<li class="nav-item">
|
||||
<a class="nav-link mb-sm-2 mb-md-0" href="#installation" data-toggle="tab" aria-selected="false">
|
||||
{{ trans('modules.tab.installation') }}
|
||||
</a>
|
||||
</li>
|
||||
@endif
|
||||
|
||||
@if ($module->faq)
|
||||
<li class="nav-item">
|
||||
<a class="nav-link mb-sm-2 mb-md-0" href="#faq" data-toggle="tab" aria-selected="false">
|
||||
{{ trans('modules.tab.faq') }}
|
||||
</a>
|
||||
</li>
|
||||
@endif
|
||||
|
||||
@if ($module->changelog)
|
||||
<li class="nav-item">
|
||||
<a class="nav-link mb-sm-2 mb-md-0" href="#changelog" data-toggle="tab" aria-selected="false">
|
||||
{{ trans('modules.tab.changelog') }}
|
||||
</a>
|
||||
</li>
|
||||
@endif
|
||||
|
||||
<li class="nav-item">
|
||||
<a class="nav-link mb-sm-2 mb-md-0" href="#review" data-toggle="tab" id="tab-{{ $module->slug }}-review" aria-selected="false">
|
||||
{{ trans('modules.tab.reviews') }} @if ($module->total_review) ({{ $module->total_review }}) @endif
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane fade show active" id="description">
|
||||
{!! $module->description !!}
|
||||
|
||||
@if($module->screenshots || $module->video)
|
||||
<akaunting-carousel name="{!! $module->name !!}" height="430px" arrow="always"
|
||||
@if($module->video)
|
||||
@php
|
||||
if (strpos($module->video->link, '=') !== false) {
|
||||
$code = explode('=', $module->video->link);
|
||||
$code[1]= str_replace('&list', '', $code[1]);
|
||||
}
|
||||
@endphp
|
||||
:video="'{{ $code[1] }}'"
|
||||
@endif
|
||||
:screenshots="{{ json_encode($module->screenshots) }}">
|
||||
</akaunting-carousel>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
@if ($module->installation)
|
||||
<div class="tab-pane fade" id="installation">
|
||||
{!! $module->installation !!}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if ($module->faq)
|
||||
<div class="tab-pane fade" id="faq">
|
||||
{!! $module->faq !!}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@if ($module->changelog)
|
||||
<div class="tab-pane fade" id="changelog">
|
||||
@if ($module->video)
|
||||
@php
|
||||
$releases = $module->app_releases;
|
||||
if (strpos($module->video->link, '=') !== false) {
|
||||
$code = explode('=', $module->video->link);
|
||||
$code[1]= str_replace('&list', '', $code[1]);
|
||||
}
|
||||
@endphp
|
||||
|
||||
<div id="releases" class="clearfix" v-if="releases.status" v-html="releases.html"></div>
|
||||
|
||||
<div id="releases" class="clearfix" v-else>
|
||||
@include('partials.modules.releases')
|
||||
</div>
|
||||
|
||||
@php
|
||||
$release_first_item = count($releases->data) > 0 ? ($releases->current_page - 1) * $releases->per_page + 1 : null;
|
||||
$release_last_item = count($releases->data) > 0 ? $release_first_item + count($releases->data) - 1 : null;
|
||||
@endphp
|
||||
|
||||
@if (!empty($release_first_item))
|
||||
@stack('pagination_start')
|
||||
|
||||
<div class="row mt-4">
|
||||
<div class="col-md-6">
|
||||
<span class="table-text d-lg-block">
|
||||
{{ trans('pagination.showing', ['first' => $release_first_item, 'last' => $release_last_item, 'total' => $releases->total, 'type' => strtolower(trans('modules.tab.changelog'))]) }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<ul class="pagination float-right">
|
||||
{{-- Previous Page Link --}}
|
||||
<li class="page-item disabled" v-if="releases.pagination.current_page == 1">
|
||||
<span class="page-link">«</span>
|
||||
</li>
|
||||
<li class="page-item" v-else>
|
||||
<button type="button" class="page-link" @click="onReleases(releases.pagination.current_page - 1)" rel="prev">«</button>
|
||||
</li>
|
||||
|
||||
{{-- Pagination Elements --}}
|
||||
@for ($page = 1; $page <= $releases->last_page; $page++)
|
||||
<li class="page-item" :class="[{'active': releases.pagination.current_page == {{ $page }}}]" v-if="releases.pagination.current_page == {{ $page }}">
|
||||
<span class="page-link">{{ $page }}</span>
|
||||
</li>
|
||||
|
||||
<li class="page-item" v-else>
|
||||
<button type="button" class="page-link" @click="onReleases({{ $page }})" data-page="{{ $page }}">{{ $page }}</button>
|
||||
</li>
|
||||
@endfor
|
||||
|
||||
{{-- Next Page Link --}}
|
||||
<li class="page-item" v-if="releases.pagination.last_page != releases.pagination.current_page">
|
||||
<button type="button" class="page-link" @click="onReleases(releases.pagination.current_page + 1)" rel="next">»</button>
|
||||
</li>
|
||||
<li class="page-item disabled" v-else>
|
||||
<span class="page-link">»</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@stack('pagination_end')
|
||||
@else
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<small>{{ trans('general.no_records') }}</small>
|
||||
</div>
|
||||
</div>
|
||||
<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
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
<div class="tab-pane fade" id="review">
|
||||
@php
|
||||
$reviews = $module->app_reviews;
|
||||
@endphp
|
||||
@if ($module->categories)
|
||||
<div class="flex justify-between">
|
||||
<span>
|
||||
@foreach ($module->categories as $module_category)
|
||||
<a href="{{ route('apps.categories.show', $module_category->slug) }}">{{ $module_category->name }}</a> </br>
|
||||
@endforeach
|
||||
</span>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div id="reviews" class="clearfix" v-if="reviews.status" v-html="reviews.html"></div>
|
||||
|
||||
<div id="reviews" class="clearfix" v-else>
|
||||
@include('partials.modules.reviews')
|
||||
</div>
|
||||
|
||||
@php
|
||||
$review_first_item = count($reviews->data) > 0 ? ($reviews->current_page - 1) * $reviews->per_page + 1 : null;
|
||||
$review_last_item = count($reviews->data) > 0 ? $review_first_item + count($reviews->data) - 1 : null;
|
||||
@endphp
|
||||
|
||||
@if (!empty($review_first_item))
|
||||
@stack('pagination_start')
|
||||
|
||||
<div class="row mt-4">
|
||||
<div class="col-md-6">
|
||||
<span class="table-text d-lg-block">
|
||||
{{ trans('pagination.showing', ['first' => $review_first_item, 'last' => $review_last_item, 'total' => $reviews->total, 'type' => strtolower(trans('modules.tab.reviews'))]) }}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<ul class="pagination float-right">
|
||||
{{-- Previous Page Link --}}
|
||||
<li class="page-item disabled" v-if="reviews.pagination.current_page == 1">
|
||||
<span class="page-link">«</span>
|
||||
</li>
|
||||
<li class="page-item" v-else>
|
||||
<button type="button" class="page-link" @click="onReviews(reviews.pagination.current_page - 1)" rel="prev">«</button>
|
||||
</li>
|
||||
|
||||
{{-- Pagination Elements --}}
|
||||
@for ($page = 1; $page <= $reviews->last_page; $page++)
|
||||
<li class="page-item" :class="[{'active': reviews.pagination.current_page == {{ $page }}}]" v-if="reviews.pagination.current_page == {{ $page }}">
|
||||
<span class="page-link">{{ $page }}</span>
|
||||
</li>
|
||||
|
||||
<li class="page-item" v-else>
|
||||
<button type="button" class="page-link" @click="onReviews({{ $page }})" data-page="{{ $page }}">{{ $page }}</button>
|
||||
</li>
|
||||
<div class="w-full lg:w-5/12" x-data="{ price_type : true }">
|
||||
<div class="flex flex-col space-y-6">
|
||||
<div class="flex flex-col">
|
||||
<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
|
||||
|
||||
{{-- Next Page Link --}}
|
||||
<li class="page-item" v-if="reviews.pagination.last_page != reviews.pagination.current_page">
|
||||
<button type="button" class="page-link" @click="onReviews(reviews.pagination.current_page + 1)" rel="next">»</button>
|
||||
</li>
|
||||
<li class="page-item disabled" v-else>
|
||||
<span class="page-link">»</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
@for ($i = $module->vote; $i < 5; $i++)
|
||||
<i class="material-icons text-sm">star_border</i>
|
||||
@endfor
|
||||
</div>
|
||||
|
||||
@stack('pagination_end')
|
||||
@else
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<small>{{ trans('general.no_records') }}</small>
|
||||
<p class="text-xs">
|
||||
@if ($module->total_review)
|
||||
( {{ $module->total_review }} {{ trans('modules.tab.reviews') }} )
|
||||
@endif
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
@endif
|
||||
|
||||
<div class="card-footer mx--4 mb--4">
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-right">
|
||||
@if (!empty($module->review_action))
|
||||
<a href="{{ $module->review_action }}" class="btn btn-success" target="_blank">
|
||||
{{ trans('modules.reviews.button.add') }}
|
||||
</a>
|
||||
<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>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<h3>{{ trans_choice('general.actions', 1) }}</h3>
|
||||
<div class="text-sm truncate line-clamp-1">
|
||||
{!! $module->description !!}
|
||||
</div>
|
||||
|
||||
@include('partials.modules.show.actions_header')
|
||||
<div class="relative flex flex-col lg:flex-row space-x-4 justify-between">
|
||||
<x-layouts.modules.show.price :module="$module" />
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
@include('partials.modules.show.price')
|
||||
<div class="flex w-1/2 lg:justify-center">
|
||||
@if ($module->price != '0.0000')
|
||||
<x-layouts.modules.show.toggle />
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex justify-around space-x-12 mt-5">
|
||||
<x-layouts.modules.show.buttons :module="$module" :installed="$installed" :enable="$enable" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
@include('partials.modules.show.buttons')
|
||||
</div>
|
||||
</div>
|
||||
<div class="tabs w-full">
|
||||
<x-tabs class="flex border-b -mb-1 space-x-2 overflow-x-scroll lg:overflow-visible" active="{{ ! empty($module->call_to_actions) ? 'features' : 'description' }}">
|
||||
<x-slot name="navs">
|
||||
@stack('features_nav_start')
|
||||
|
||||
<h3>{{ trans('modules.about') }}</h3>
|
||||
|
||||
<div class="card">
|
||||
<table class="table">
|
||||
<tbody>
|
||||
@if ($module->vendor_name)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans_choice('general.developers', 1) }}</th>
|
||||
<td class="col-7 text-right"><a href="{{ route('apps.vendors.show', $module->vendor->slug) }}">{{ $module->vendor_name }}</a></td>
|
||||
</tr>
|
||||
@if ($module->call_to_actions)
|
||||
<x-tabs.nav
|
||||
id="features"
|
||||
name="{{ trans('modules.tab.features') }}"
|
||||
active
|
||||
class="relative px-8 text-sm text-black text-center pb-2 cursor-pointer transition-all border-b tabs-link"
|
||||
/>
|
||||
@else
|
||||
<x-tabs.nav
|
||||
id="description"
|
||||
name="{{ trans('general.description') }}"
|
||||
active
|
||||
class="relative px-8 text-sm text-black text-center pb-2 cursor-pointer transition-all border-b tabs-link"
|
||||
/>
|
||||
@endif
|
||||
|
||||
@if ($module->version)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans('footer.version') }}</th>
|
||||
<td class="col-7 text-right">{{ $module->version }}</td>
|
||||
</tr>
|
||||
@stack('reviews_nav_start')
|
||||
|
||||
@if ($module->app_reviews->data)
|
||||
<x-tabs.nav
|
||||
id="reviews"
|
||||
name="{{ trans('modules.tab.reviews') }}"
|
||||
class="relative px-8 text-sm text-black text-center pb-2 cursor-pointer transition-all border-b tabs-link"
|
||||
/>
|
||||
@endif
|
||||
|
||||
@if ($module->created_at)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans('modules.added') }}</th>
|
||||
<td class="col-7 text-right long-texts">@date($module->created_at)</td>
|
||||
</tr>
|
||||
@stack('installation_nav_start')
|
||||
|
||||
@if ($module->installation)
|
||||
<x-tabs.nav
|
||||
id="installation"
|
||||
name="{{ trans('modules.tab.installation') }}"
|
||||
class="relative px-8 text-sm text-black text-center pb-2 cursor-pointer transition-all border-b tabs-link"
|
||||
/>
|
||||
@endif
|
||||
|
||||
@if ($module->updated_at)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans('modules.updated') }}</th>
|
||||
<td class="col-7 text-right">{{ Date::parse($module->updated_at)->diffForHumans() }}</td>
|
||||
</tr>
|
||||
@stack('documentation_nav_start')
|
||||
|
||||
@if ($module->documentation)
|
||||
<x-tabs.nav
|
||||
id="documentation"
|
||||
name="{{ trans('modules.documentation') }}"
|
||||
class="relative px-8 text-sm text-black text-center pb-2 cursor-pointer transition-all border-b tabs-link"
|
||||
/>
|
||||
@endif
|
||||
|
||||
@if ($module->categories)
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans_choice('general.categories', (count($module->categories) > 1) ? 2 : 1) }}</th>
|
||||
<td class="col-7 text-right">
|
||||
@foreach ($module->categories as $module_category)
|
||||
<a href="{{ route('apps.categories.show', $module_category->slug) }}">{{ $module_category->name }}</a> </br>
|
||||
@endforeach
|
||||
</td>
|
||||
</tr>
|
||||
@stack('screenshots_nav_start')
|
||||
|
||||
@if ($module->screenshots)
|
||||
<x-tabs.nav
|
||||
id="screenshots"
|
||||
name="{{ trans('modules.tab.screenshots') }}"
|
||||
class="relative px-8 text-sm text-black text-center pb-2 cursor-pointer transition-all border-b tabs-link"
|
||||
/>
|
||||
@endif
|
||||
|
||||
<tr class="row">
|
||||
<th class="col-5">{{ trans('modules.documentation') }}</th>
|
||||
@if ($module->documentation)
|
||||
<td class="col-7 text-right">
|
||||
<a href="{{ route('apps.docs.show', $module->slug) }}">{{ trans('modules.view') }}</a>
|
||||
</td>
|
||||
@stack('changelog_nav_start')
|
||||
|
||||
@if ($module->changelog)
|
||||
<x-tabs.nav
|
||||
id="changelog"
|
||||
name="{{ trans('modules.tab.changelog') }}"
|
||||
class="relative px-8 text-sm text-black text-center pb-2 cursor-pointer transition-all border-b tabs-link"
|
||||
/>
|
||||
@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
|
||||
<td class="col-7 text-right">{{ trans('general.na') }}</td>
|
||||
<x-tabs.tab id="description">
|
||||
<x-layouts.modules.show.description :module="$module" />
|
||||
</x-tabs.tab>
|
||||
@endif
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
@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->installation)
|
||||
<x-tabs.tab id="installation">
|
||||
<x-layouts.modules.show.installation :module="$module" />
|
||||
</x-tabs.tab>
|
||||
@endif
|
||||
|
||||
@stack('documentation_tab_start')
|
||||
|
||||
@if ($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->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>
|
||||
</div>
|
||||
|
||||
@if ($module->purchase_faq)
|
||||
<akaunting-modal :show="faq" modal-dialog-class="modal-md">
|
||||
<template #modal-content>
|
||||
{!! $module->purchase_faq !!}
|
||||
</template>
|
||||
</akaunting-modal>
|
||||
@endif
|
||||
@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>
|
||||
|
||||
@if ($module->install)
|
||||
<akaunting-modal :show="installation.show"
|
||||
title="{{ trans('modules.installation.header') }}"
|
||||
@cancel="installation.show = false">
|
||||
<template #modal-body>
|
||||
<div class="modal-body">
|
||||
<el-progress :text-inside="true" :stroke-width="24" :percentage="installation.total" :status="installation.status"></el-progress>
|
||||
<template #card-footer>
|
||||
<span></span>
|
||||
</template>
|
||||
</akaunting-modal>
|
||||
@endif
|
||||
</x-slot>
|
||||
|
||||
<div id="progress-text" class="mt-3" v-html="installation.html"></div>
|
||||
</div>
|
||||
</template>
|
||||
<template #card-footer>
|
||||
<span></span>
|
||||
</template>
|
||||
</akaunting-modal>
|
||||
@endif
|
||||
@endsection
|
||||
@push('scripts_start')
|
||||
<script type="text/javascript">
|
||||
var app_slug = "{{ $module->slug }}";
|
||||
</script>
|
||||
@endpush
|
||||
|
||||
@push('scripts_start')
|
||||
<script type="text/javascript">
|
||||
var app_slug = "{{ $module->slug }}";
|
||||
|
||||
$(document).on("click", "#app-pricing .nav-link", function() {
|
||||
$('#button-monthly').removeClass('d-none');
|
||||
$('#button-yearly').addClass('d-none');
|
||||
|
||||
if ($(this).attr('href') == '#yearly') {
|
||||
$('#button-yearly').removeClass('d-none');
|
||||
$('#button-monthly').addClass('d-none');
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<script src="{{ asset('public/js/modules/item.js?v=' . version('short')) }}"></script>
|
||||
@endpush
|
||||
<x-script folder="modules" file="apps" />
|
||||
</x-layouts.modules>
|
||||
|
@ -1,44 +1,23 @@
|
||||
@extends('layouts.modules')
|
||||
<x-layouts.modules>
|
||||
<x-slot name="title">
|
||||
{{ trans_choice('general.modules', 2) }}
|
||||
</x-slot>
|
||||
|
||||
@section('title', trans_choice('general.modules', 2))
|
||||
<x-slot name="buttons">
|
||||
<x-link href="{{ route('apps.api-key.create') }}">
|
||||
{{ trans('modules.api_key') }}
|
||||
</x-link>
|
||||
|
||||
@section('new_button')
|
||||
<a href="{{ route('apps.api-key.create') }}" class="btn btn-white btn-sm">{{ trans('modules.api_key') }}</a>
|
||||
<a href="{{ route('apps.my.index') }}" class="btn btn-white btn-sm">{{ trans('modules.my_apps') }}</a>
|
||||
@endsection
|
||||
<x-link href="{{ route('apps.my.index') }}">
|
||||
{{ trans('modules.my_apps') }}
|
||||
</x-link>
|
||||
</x-slot>
|
||||
|
||||
@section('content')
|
||||
@include('partials.modules.bar')
|
||||
<x-slot name="content">
|
||||
<x-modules.purchased />
|
||||
|
||||
<h2>{{ trans('modules.my.purchased') }}</h2>
|
||||
<x-modules.installed />
|
||||
</x-slot>
|
||||
|
||||
<div class="row">
|
||||
@if ($purchased)
|
||||
@foreach ($purchased as $module)
|
||||
@include('partials.modules.item')
|
||||
@endforeach
|
||||
@else
|
||||
<div class="col-md-12">
|
||||
@include('partials.modules.no_apps')
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<h2>{{ trans('modules.my.installed') }}</h2>
|
||||
|
||||
<div class="row">
|
||||
@if ($modules)
|
||||
@foreach ($modules as $module)
|
||||
@include('partials.modules.item')
|
||||
@endforeach
|
||||
@else
|
||||
<div class="col-md-12">
|
||||
@include('partials.modules.no_apps')
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('scripts_start')
|
||||
<script src="{{ asset('public/js/modules/apps.js?v=' . version('short')) }}"></script>
|
||||
@endpush
|
||||
<x-script folder="modules" file="apps" />
|
||||
</x-layouts.modules>
|
||||
|
@ -1,46 +1,21 @@
|
||||
@extends('layouts.modules')
|
||||
<x-layouts.modules>
|
||||
<x-slot name="title">
|
||||
{{ trans_choice('general.modules', 2) }}
|
||||
</x-slot>
|
||||
|
||||
@section('title', trans_choice('general.modules', 2))
|
||||
<x-slot name="buttons">
|
||||
<x-link href="{{ route('apps.api-key.create') }}">
|
||||
{{ trans('modules.api_key') }}
|
||||
</x-link>
|
||||
|
||||
@section('new_button')
|
||||
<a href="{{ route('apps.api-key.create') }}" class="btn btn-white btn-sm">{{ trans('modules.api_key') }}</a>
|
||||
<a href="{{ route('apps.my.index') }}" class="btn btn-white btn-sm">{{ trans('modules.my_apps') }}</a>
|
||||
@endsection
|
||||
<x-link href="{{ route('apps.my.index') }}">
|
||||
{{ trans('modules.my_apps') }}
|
||||
</x-link>
|
||||
</x-slot>
|
||||
|
||||
@section('content')
|
||||
@include('partials.modules.bar')
|
||||
<x-slot name="content">
|
||||
<x-modules.items title="{{ $title }}" :model="$modules" see-more />
|
||||
</x-slot>
|
||||
|
||||
<h2>{{ $title }}</h2>
|
||||
|
||||
<div class="row">
|
||||
@if ($modules && !empty($modules->data))
|
||||
@foreach ($modules->data as $module)
|
||||
@if ($module->status_type == 'pre_sale')
|
||||
@include('partials.modules.pre_sale')
|
||||
@else
|
||||
@include('partials.modules.item')
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
<div class="col-md-6 text-left">
|
||||
@if ($modules->current_page > 1)
|
||||
<a href="{{ url(request()->path()) }}?page={{ $modules->current_page - 1 }}" class="btn btn-white btn-sm">{!! trans('pagination.previous') !!}</a>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div class="col-md-6 text-right">
|
||||
@if ($modules->current_page < $modules->last_page)
|
||||
<a href="{{ url(request()->path()) }}?page={{ $modules->current_page + 1 }}" class="btn btn-white btn-sm">{!! trans('pagination.next') !!}</a>
|
||||
@endif
|
||||
</div>
|
||||
@else
|
||||
<div class="col-md-12">
|
||||
@include('partials.modules.no_apps')
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@push('scripts_start')
|
||||
<script src="{{ asset('public/js/modules/apps.js?v=' . version('short')) }}"></script>
|
||||
@endpush
|
||||
<x-script folder="modules" file="apps" />
|
||||
</x-layouts.modules>
|
||||
|
Reference in New Issue
Block a user