Merge branch 'bagisto/master' into haendlerbund/copy-cart-rules
This commit is contained in:
commit
9219c283fb
|
|
@ -1,6 +1,5 @@
|
|||
|
||||
|
||||
<?php
|
||||
|
||||
return [
|
||||
'save' => 'حفظ',
|
||||
'create' => 'خلق',
|
||||
|
|
@ -1016,6 +1015,7 @@ return [
|
|||
'choose-condition-to-add' => 'اختر شرط لإضافته',
|
||||
'cart-attribute' => 'سمة سلة التسوق',
|
||||
'subtotal' => 'المجموع الفرعي',
|
||||
'additional' => 'Additional Information',
|
||||
'total-items-qty' => 'إجمالي كمية العناصر',
|
||||
'total-weight' => 'الوزن الكلي',
|
||||
'payment-method' => 'طريقة الدفع او السداد',
|
||||
|
|
|
|||
|
|
@ -1013,11 +1013,12 @@ return array (
|
|||
'conditions' => 'Bedingungen',
|
||||
'condition-type' => 'Bedingungen Typ',
|
||||
'all-conditions-true' => 'Alle Bedingungen sind erfüllt',
|
||||
'any-condition-true' => 'Jede Bedingung ist wahr',
|
||||
'any-condition-true' => 'Mindestens eine Bedingung ist erfüllt',
|
||||
'add-condition' => 'Bedingung hinzufügen',
|
||||
'choose-condition-to-add' => 'Wählen Sie eine Bedingung zum Hinzufügen aus',
|
||||
'cart-attribute' => 'Warenkorbattribut',
|
||||
'subtotal' => 'Zwischensumme',
|
||||
'additional' => 'Zusatzinformationen',
|
||||
'total-items-qty' => 'Gesamtmenge der Artikel',
|
||||
'total-weight' => 'Gesamtgewicht',
|
||||
'payment-method' => 'Zahlungsmethode',
|
||||
|
|
|
|||
|
|
@ -20,7 +20,6 @@ return [
|
|||
'true' => 'True',
|
||||
'false' => 'False',
|
||||
'apply' => 'Apply',
|
||||
'action' => 'Action',
|
||||
'label' => 'Label',
|
||||
'name' => 'Name',
|
||||
'title' => 'Title',
|
||||
|
|
@ -366,7 +365,6 @@ return [
|
|||
'tax-percent' => 'Tax Percent',
|
||||
'tax-amount' => 'Tax Amount',
|
||||
'discount-amount' => 'Discount Amount',
|
||||
'discount-amount' => 'Discount Amount',
|
||||
'grand-total' => 'Grand Total',
|
||||
'total-paid' => 'Total Paid',
|
||||
'total-refunded' => 'Total Refunded',
|
||||
|
|
@ -484,8 +482,6 @@ return [
|
|||
'price' => 'Price',
|
||||
'weight' => 'Weight',
|
||||
'status' => 'Status',
|
||||
'enabled' => 'Enabled',
|
||||
'disabled' => 'Disabled',
|
||||
'add-variant-title' => 'Add Variant',
|
||||
'variant-already-exist-message' => 'Variant with same attribute options already exists.',
|
||||
'add-image-btn-title' => 'Add Image',
|
||||
|
|
@ -517,7 +513,6 @@ return [
|
|||
'searching' => 'Searching ...',
|
||||
'grouped-products' => 'Grouped Products',
|
||||
'search-products' => 'Search Products',
|
||||
'no-result-found' => 'Products not found with same name.',
|
||||
'channel' => 'Channels',
|
||||
'bundle-items' => 'Bundle Items',
|
||||
'add-option-btn-title' => 'Add Option',
|
||||
|
|
@ -572,7 +567,6 @@ return [
|
|||
'no' => 'No',
|
||||
'value_per_locale' => 'Value Per Locale',
|
||||
'value_per_channel' => 'Value Per Channel',
|
||||
'value_per_channel' => 'Value Per Channel',
|
||||
'is_filterable' => 'Use in Layered Navigation',
|
||||
'is_configurable' => 'Use To Create Configurable Product',
|
||||
'admin_name' => 'Admin Name',
|
||||
|
|
@ -681,7 +675,6 @@ return [
|
|||
'edit-button-title' => 'Edit Rate'
|
||||
],
|
||||
'zip_code' => 'Zip Code',
|
||||
'is_zip' => 'Enable Zip Range',
|
||||
],
|
||||
|
||||
'sales' => [
|
||||
|
|
@ -700,7 +693,6 @@ return [
|
|||
'title' => 'Locales',
|
||||
'add-title' => 'Add Locale',
|
||||
'edit-title' => 'Edit Locale',
|
||||
'add-title' => 'Add Locale',
|
||||
'save-btn-title' => 'Save Locale',
|
||||
'general' => 'General',
|
||||
'code' => 'Code',
|
||||
|
|
@ -827,7 +819,7 @@ return [
|
|||
'created-fault' => 'Error in creating slider item',
|
||||
'update-success' => 'Slider item successfully updated',
|
||||
'update-fail' => 'Slider cannot be updated',
|
||||
'delete-success' => 'Cannot delete last llider item',
|
||||
'delete-success' => 'Cannot delete last slider item',
|
||||
'delete-fail' => 'Slider item successfully deleted'
|
||||
],
|
||||
|
||||
|
|
@ -873,7 +865,6 @@ return [
|
|||
'edit-button-title' => 'Edit Rate'
|
||||
],
|
||||
'zip_code' => 'Zip Code',
|
||||
'is_zip' => 'Enable Zip Range',
|
||||
'create-success' => 'Tax Rate Created Successfully',
|
||||
'create-error' => 'Cannot Create Tax Rate',
|
||||
'update-success' => 'Tax Rate Updated Successfully',
|
||||
|
|
@ -892,7 +883,6 @@ return [
|
|||
'edit-title' => 'Edit Group',
|
||||
'save-btn-title' => 'Save Group',
|
||||
'title' => 'Groups',
|
||||
'save-btn-title' => 'Save Group',
|
||||
'code' => 'Code',
|
||||
'name' => 'Name',
|
||||
'is_user_defined' => 'User Defined',
|
||||
|
|
@ -956,7 +946,6 @@ return [
|
|||
'other' => 'Other',
|
||||
'male' => 'Male',
|
||||
'female' => 'Female',
|
||||
'phone' => 'Phone',
|
||||
'group-default' => 'Cannot delete the default group.',
|
||||
'edit-help-title' => 'Edit Customer',
|
||||
'delete-help-title' => 'Delete Customer',
|
||||
|
|
@ -1026,6 +1015,7 @@ return [
|
|||
'choose-condition-to-add' => 'Choose a condition to add',
|
||||
'cart-attribute' => 'Cart Attribute',
|
||||
'subtotal' => 'Subtotal',
|
||||
'additional' => 'Additional Information',
|
||||
'total-items-qty' => 'Total Items Qty',
|
||||
'total-weight' => 'Total Weight',
|
||||
'payment-method' => 'Payment Method',
|
||||
|
|
@ -1342,7 +1332,6 @@ return [
|
|||
'favicon' => 'Favicon',
|
||||
'seo' => 'SEO',
|
||||
'rich-snippets' => 'Rich Snippets',
|
||||
'products' => 'Products',
|
||||
'enable' => 'Enable',
|
||||
'show-weight' => 'Show Weight',
|
||||
'show-categories' => 'Show Categories',
|
||||
|
|
@ -1352,7 +1341,6 @@ return [
|
|||
'show-offers' => 'Show Offers',
|
||||
'show-sku' => 'Show SKU',
|
||||
'categories' => 'Categories',
|
||||
'show-sku' => 'Show SKU',
|
||||
'show-search-input-field' => 'Show Search Input Field'
|
||||
]
|
||||
]
|
||||
|
|
|
|||
|
|
@ -1016,6 +1016,7 @@ return [
|
|||
'choose-condition-to-add' => 'شرطی را برای اضافه کردن انتخاب کنید',
|
||||
'cart-attribute' => 'ویژگی سبد خرید',
|
||||
'subtotal' => 'فرعی',
|
||||
'additional' => 'Additional Information',
|
||||
'total-items-qty' => 'تعداد کل موارد',
|
||||
'total-weight' => 'وزن کل',
|
||||
'payment-method' => 'روش پرداخت',
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ return [
|
|||
'status' => 'Stato',
|
||||
'select-option' => 'Seleziona opzione',
|
||||
'category' => 'Categoria',
|
||||
|
||||
|
||||
'common' => [
|
||||
'no-result-found' => 'Non è stato trovato nessun record.',
|
||||
'country' => 'Paese',
|
||||
|
|
@ -1020,6 +1020,7 @@ return [
|
|||
'choose-condition-to-add' => 'Scegli una condizione da aggiungere',
|
||||
'cart-attribute' => 'Attributi Carrello',
|
||||
'subtotal' => 'Subtotale',
|
||||
'additional' => 'Additional Information',
|
||||
'total-items-qty' => 'Totale articoli Qtà',
|
||||
'total-weight' => 'Totale Peso',
|
||||
'payment-method' => 'Metodo di Pagamento',
|
||||
|
|
@ -1153,8 +1154,8 @@ return [
|
|||
],
|
||||
|
||||
'export' => [
|
||||
'export' => 'Esporta
|
||||
'import' => 'Importa,
|
||||
'export' => 'Esporta',
|
||||
'import' => 'Importa',
|
||||
'format' => 'Seleziona formato',
|
||||
'download' => 'Download',
|
||||
'upload' => 'Upload',
|
||||
|
|
|
|||
|
|
@ -1016,6 +1016,7 @@ return [
|
|||
'choose-condition-to-add' => 'Conditie toevoegen',
|
||||
'cart-attribute' => 'Winkelwagenattribuut',
|
||||
'subtotal' => 'Subtotaal',
|
||||
'additional' => 'Additional Information',
|
||||
'total-items-qty' => 'Totaal aantal artikelen',
|
||||
'total-weight' => 'Totale gewicht',
|
||||
'payment-method' => 'Betaalmethode',
|
||||
|
|
|
|||
|
|
@ -1018,6 +1018,7 @@ return [
|
|||
'choose-condition-to-add' => 'Wybierz warunek do dodania',
|
||||
'cart-attribute' => ' Atrybut koszyka',
|
||||
'subtotal' => 'Suma częściowa',
|
||||
'additional' => 'Additional Information',
|
||||
'total-items-qty' => 'Całkowita liczba pozycji',
|
||||
'total-weight' => 'Waga całkowita',
|
||||
'payment-method' => 'Metoda płatności',
|
||||
|
|
|
|||
|
|
@ -1017,6 +1017,7 @@ return [
|
|||
'choose-condition-to-add' => 'Escolha uma condição para adicionar',
|
||||
'cart-attribute' => 'Atributo do carrinho',
|
||||
'subtotal' => 'Subtotal',
|
||||
'additional' => 'Additional Information',
|
||||
'total-items-qty' => 'Quantidade total de itens',
|
||||
'total-weight' => 'Peso total',
|
||||
'payment-method' => 'Forma de pagamento',
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -220,8 +220,8 @@
|
|||
selector: 'textarea#description',
|
||||
height: 200,
|
||||
width: "100%",
|
||||
plugins: 'image imagetools media wordcount save fullscreen code',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
|
||||
plugins: 'image imagetools media wordcount save fullscreen code table lists link hr',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor link hr | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code | table',
|
||||
image_advtab: true
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -232,8 +232,8 @@
|
|||
selector: 'textarea#description',
|
||||
height: 200,
|
||||
width: "100%",
|
||||
plugins: 'image imagetools media wordcount save fullscreen code',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
|
||||
plugins: 'image imagetools media wordcount save fullscreen code table lists link hr',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor link hr | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code | table',
|
||||
image_advtab: true
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -198,8 +198,8 @@
|
|||
selector: 'textarea#description, textarea#short_description',
|
||||
height: 200,
|
||||
width: "100%",
|
||||
plugins: 'image imagetools media wordcount save fullscreen code',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
|
||||
plugins: 'image imagetools media wordcount save fullscreen code table lists link hr',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor link hr | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code | table',
|
||||
image_advtab: true
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -117,8 +117,8 @@
|
|||
selector: 'textarea#content',
|
||||
height: 200,
|
||||
width: "100%",
|
||||
plugins: 'image imagetools media wordcount save fullscreen code',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
|
||||
plugins: 'image imagetools media wordcount save fullscreen code table lists link hr',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor alignleft aligncenter alignright alignjustif| link hr |numlist bullist outdent indent | removeformat | code | table',
|
||||
image_advtab: true,
|
||||
valid_elements : '*[*]'
|
||||
});
|
||||
|
|
|
|||
|
|
@ -48,6 +48,38 @@
|
|||
</div>
|
||||
|
||||
<div class="page-action">
|
||||
<div class="control-group">
|
||||
<select class="control" id="channel-switcher" name="channel" onchange="reloadPage('channel', this.value)" >
|
||||
<option value="all" {{ ! isset($channel) ? 'selected' : '' }}>
|
||||
{{ __('admin::app.admin.system.all-channels') }}
|
||||
</option>
|
||||
|
||||
@foreach (core()->getAllChannels() as $channelModel)
|
||||
<option
|
||||
value="{{ $channelModel->id }}" {{ (isset($channel) && ($channelModel->id) == $channel) ? 'selected' : '' }}>
|
||||
{{ $channelModel->name }}
|
||||
</option>
|
||||
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="control-group">
|
||||
<select class="control" id="customer-group-switcher" name="customer_group" onchange="reloadPage('customer_group', this.value)" >
|
||||
<option value="all" {{ ! isset($locale) ? 'selected' : '' }}>
|
||||
{{ __('admin::app.admin.system.all-customer-groups') }}
|
||||
</option>
|
||||
|
||||
@foreach (core()->getAllCustomerGroups() as $customerGroupModel)
|
||||
<option
|
||||
value="{{ $customerGroupModel->id }}" {{ (isset($customerGroupModel) && ($customerGroupModel->id) == $customer_group) ? 'selected' : '' }}>
|
||||
{{ $customerGroupModel->name }}
|
||||
</option>
|
||||
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<a href="{{ route('admin.cart-rules.create') }}" class="btn btn-lg btn-primary">
|
||||
{{ __('admin::app.promotions.cart-rules.add-title') }}
|
||||
</a>
|
||||
|
|
|
|||
|
|
@ -218,8 +218,8 @@
|
|||
selector: 'textarea#home_page_content,textarea#footer_content',
|
||||
height: 200,
|
||||
width: "100%",
|
||||
plugins: 'image imagetools media wordcount save fullscreen code',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
|
||||
plugins: 'image imagetools media wordcount save fullscreen code table lists link hr',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor link hr | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code | table',
|
||||
image_advtab: true,
|
||||
valid_elements : '*[*]'
|
||||
});
|
||||
|
|
|
|||
|
|
@ -233,8 +233,8 @@
|
|||
selector: 'textarea#home_page_content,textarea#footer_content',
|
||||
height: 200,
|
||||
width: "100%",
|
||||
plugins: 'image imagetools media wordcount save fullscreen code',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
|
||||
plugins: 'image imagetools media wordcount save fullscreen code table lists link hr',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor link hr | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code | table',
|
||||
image_advtab: true,
|
||||
valid_elements : '*[*]'
|
||||
});
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<div class="control-group" :class="[errors.has('locale') ? 'has-error' : '']">
|
||||
<label for="locale">{{ __('admin::app.datagrid.locale') }}</label>
|
||||
|
||||
|
||||
<select class="control" id="locale" name="locale" data-vv-as=""{{ __('admin::app.datagrid.locale') }}"" value="" v-validate="'required'">
|
||||
@foreach (core()->getAllLocales() as $localeModel)
|
||||
|
||||
|
|
@ -103,8 +103,8 @@
|
|||
selector: 'textarea#tiny',
|
||||
height: 200,
|
||||
width: "100%",
|
||||
plugins: 'image imagetools media wordcount save fullscreen code',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
|
||||
plugins: 'image imagetools media wordcount save fullscreen code table lists link hr',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor link hr | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code | table',
|
||||
image_advtab: true,
|
||||
templates: [
|
||||
{ title: 'Test template 1', content: 'Test 1' },
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
@if ($slider->locale)
|
||||
<span class="locale">[{{ $slider->locale }}]</span>
|
||||
@endif
|
||||
|
||||
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
|
|
@ -94,8 +94,8 @@
|
|||
selector: 'textarea#tiny',
|
||||
height: 200,
|
||||
width: "100%",
|
||||
plugins: 'image imagetools media wordcount save fullscreen code',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
|
||||
plugins: 'image imagetools media wordcount save fullscreen code table lists link hr',
|
||||
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor link hr | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code | table',
|
||||
image_advtab: true,
|
||||
templates: [
|
||||
{ title: 'Test template 1', content: 'Test 1' },
|
||||
|
|
|
|||
|
|
@ -272,6 +272,10 @@ class CartRuleRepository extends Repository
|
|||
'key' => 'cart_item|base_total',
|
||||
'type' => 'price',
|
||||
'label' => trans('admin::app.promotions.cart-rules.subtotal'),
|
||||
], [
|
||||
'key' => 'cart_item|additional',
|
||||
'type' => 'text',
|
||||
'label' => trans('admin::app.promotions.cart-rules.additional'),
|
||||
]
|
||||
]
|
||||
], [
|
||||
|
|
|
|||
|
|
@ -26,6 +26,10 @@ class LocalesTableSeeder extends Seeder
|
|||
'id' => 3,
|
||||
'code' => 'nl',
|
||||
'name' => 'Dutch',
|
||||
], [
|
||||
'id' => 4,
|
||||
'code' => 'tr',
|
||||
'name' => 'Türkçe',
|
||||
]]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,7 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'slug' => ':attribute değeri geçerli bir url olmalı.',
|
||||
'code' => ':attribute değeri geçerli olmalı.',
|
||||
'decimal' => ':attribute geçerli olmalı.'
|
||||
];
|
||||
|
|
@ -27,9 +27,13 @@ class Toolbar extends AbstractProduct
|
|||
*/
|
||||
public function getAvailableLimits()
|
||||
{
|
||||
return core()->getConfigData('catalog.products.storefront.products_per_page')
|
||||
? explode(',', core()->getConfigData('catalog.products.storefront.products_per_page'))
|
||||
: [9, 15, 21, 28];
|
||||
if (core()->getConfigData('catalog.products.storefront.products_per_page')) {
|
||||
$pages = explode(',', core()->getConfigData('catalog.products.storefront.products_per_page'));
|
||||
|
||||
return $pages;
|
||||
}
|
||||
|
||||
return [9, 15, 21, 28];
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -108,7 +108,14 @@ class ProductRepository extends Repository
|
|||
{
|
||||
$params = request()->input();
|
||||
|
||||
$perPage = isset($params['limit']) ? $params['limit'] : 9;
|
||||
if (core()->getConfigData('catalog.products.storefront.products_per_page')) {
|
||||
$pages = explode(',', core()->getConfigData('catalog.products.storefront.products_per_page'));
|
||||
|
||||
$perPage = isset($params['limit']) ? $params['limit'] : current($pages);
|
||||
} else {
|
||||
$perPage = isset($params['limit']) ? $params['limit'] : 9;
|
||||
}
|
||||
|
||||
$page = Paginator::resolveCurrentPage('page');
|
||||
|
||||
$repository = app(ProductFlatRepository::class)->scopeQuery(function($query) use($params, $categoryId) {
|
||||
|
|
@ -158,7 +165,7 @@ class ProductRepository extends Repository
|
|||
}
|
||||
}
|
||||
|
||||
if( $priceFilter = request('price') ){
|
||||
if ( $priceFilter = request('price') ){
|
||||
$priceRange = explode(',', $priceFilter);
|
||||
if( count($priceRange) > 0 ) {
|
||||
$qb->where('variants.min_price', '>=', core()->convertToBasePrice($priceRange[0]));
|
||||
|
|
@ -171,7 +178,7 @@ class ProductRepository extends Repository
|
|||
request()->except(['price'])
|
||||
));
|
||||
|
||||
if( count($attributeFilters) > 0 ) {
|
||||
if ( count($attributeFilters) > 0 ) {
|
||||
$qb->where(function ($filterQuery) use($attributeFilters){
|
||||
|
||||
foreach ($attributeFilters as $attribute) {
|
||||
|
|
@ -220,7 +227,7 @@ class ProductRepository extends Repository
|
|||
$countQuery = "select count(*) as aggregate from ({$repository->model->toSql()}) c";
|
||||
$count = collect(DB::select($countQuery, $repository->model->getBindings()))->pluck('aggregate')->first();
|
||||
|
||||
if($count > 0) {
|
||||
if ($count > 0) {
|
||||
# apply a new scope query to limit results to one page
|
||||
$repository->scopeQuery(function ($query) use ($page, $perPage) {
|
||||
return $query->forPage($page, $perPage);
|
||||
|
|
|
|||
|
|
@ -499,7 +499,7 @@ class Bundle extends AbstractType
|
|||
*/
|
||||
public function compareOptions($options1, $options2)
|
||||
{
|
||||
if ($this->product->id != $options2['product_id']) {
|
||||
if (isset($options2['product_id']) && $this->product->id != $options2['product_id']) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -344,9 +344,10 @@ class Configurable extends AbstractType
|
|||
/**
|
||||
* Get product minimal price
|
||||
*
|
||||
* @param int $qty
|
||||
* @return float
|
||||
*/
|
||||
public function getMinimalPrice()
|
||||
public function getMinimalPrice($qty = null)
|
||||
{
|
||||
$minPrices = [];
|
||||
|
||||
|
|
@ -575,16 +576,16 @@ class Configurable extends AbstractType
|
|||
$backorders = core()->getConfigData('catalog.inventory.stock_options.backorders');
|
||||
|
||||
$backorders = ! is_null ($backorders) ? $backorders : false;
|
||||
|
||||
|
||||
foreach ($this->product->variants as $variant) {
|
||||
if ($variant->haveSufficientQuantity($qty)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $backorders;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return true if this product type is saleable
|
||||
*
|
||||
|
|
@ -597,7 +598,7 @@ class Configurable extends AbstractType
|
|||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ class Validator
|
|||
if ($entity instanceof \Webkul\Checkout\Contracts\Cart && strpos($condition['attribute'], 'cart|') === false) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
$totalConditionCount++;
|
||||
|
||||
if ($rule->condition_type == 1) {
|
||||
|
|
@ -99,7 +99,7 @@ class Validator
|
|||
$value = $entity->product
|
||||
? $entity->product->categories()->pluck('id')->toArray()
|
||||
: $entity->categories()->pluck('id')->toArray();
|
||||
|
||||
|
||||
return $value;
|
||||
} else {
|
||||
$value = $entity->product
|
||||
|
|
@ -109,7 +109,7 @@ class Validator
|
|||
if (! in_array($condition['attribute_type'], ['multiselect', 'checkbox'])) {
|
||||
return $value;
|
||||
}
|
||||
|
||||
|
||||
return $value ? explode(',', $value) : [];
|
||||
}
|
||||
}
|
||||
|
|
@ -236,9 +236,9 @@ class Validator
|
|||
$result = ! empty(array_intersect($condition['value'], $attributeValue));
|
||||
} else {
|
||||
if (is_array($attributeValue)) {
|
||||
$result = in_array($condition['value'], $attributeValue);
|
||||
$result = self::validateArrayValues($attributeValue, $condition['value']);
|
||||
} else {
|
||||
$result = (strpos($attributeValue, $condition['value']) !== false) ? true : false;
|
||||
$result = strpos($attributeValue, $condition['value']) !== false;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -251,4 +251,28 @@ class Validator
|
|||
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate the condition value against a multi dimensional array recursively
|
||||
*
|
||||
* @param array $attributeValue
|
||||
* @param string $conditionValue
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
private static function validateArrayValues(array $attributeValue, string $conditionValue): bool
|
||||
{
|
||||
if (in_array($conditionValue, $attributeValue, true) === true) {
|
||||
return true;
|
||||
}
|
||||
|
||||
foreach ($attributeValue as $subValue) {
|
||||
if (is_array($subValue)) {
|
||||
if (self::validateArrayValues($subValue, $conditionValue) === true) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,686 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'invalid_vat_format' => 'Girmiş olduğunuz vergi no hatalı',
|
||||
'security-warning' => 'Şüpheli etkinlik tespit edildi!!!',
|
||||
'nothing-to-delete' => 'Silinecek bir şey bulunmadı!',
|
||||
|
||||
'layouts' => [
|
||||
'my-account' => 'Hesabım',
|
||||
'profile' => 'Profil',
|
||||
'address' => 'Adres',
|
||||
'reviews' => 'İncelemeler',
|
||||
'wishlist' => 'Dilek Listesi',
|
||||
'orders' => 'Siparişler',
|
||||
'downloadable-products' => 'İndirilebilir Ürünler'
|
||||
],
|
||||
|
||||
'common' => [
|
||||
'error' => 'Bir şeyler ters gitti, lütfen tekrar deneyin.',
|
||||
'no-result-found' => 'Kayıt bulunamadı.'
|
||||
],
|
||||
|
||||
'home' => [
|
||||
'page-title' => config('app.name') . ' - Ana Sayfa',
|
||||
'featured-products' => 'Özel Ürünler',
|
||||
'new-products' => 'Yeni Ürünler',
|
||||
'verify-email' => 'Mail hesabınızı doğrulayınız',
|
||||
'resend-verify-email' => 'Doğrulama Maili Gönder'
|
||||
],
|
||||
|
||||
'header' => [
|
||||
'title' => 'Hesap',
|
||||
'dropdown-text' => 'Sepet, Sipariş & Dilek Listesini Yönet',
|
||||
'sign-in' => 'Giriş Yap',
|
||||
'sign-up' => 'Kaydol',
|
||||
'account' => 'Hesap',
|
||||
'cart' => 'Alışveriş Sepeti',
|
||||
'profile' => 'Profil',
|
||||
'wishlist' => 'Dilek Listesi',
|
||||
'logout' => 'Çıkış Yap',
|
||||
'search-text' => 'Ürün arayın...'
|
||||
],
|
||||
|
||||
'minicart' => [
|
||||
'view-cart' => 'Sepeti Görüntüle',
|
||||
'checkout' => 'Satın Al',
|
||||
'cart' => 'Sepet',
|
||||
'zero' => '0'
|
||||
],
|
||||
|
||||
'footer' => [
|
||||
'subscribe-newsletter' => 'Bültene Kaydol',
|
||||
'subscribe' => 'Abone Ol',
|
||||
'locale' => 'Dil',
|
||||
'currency' => 'Para Birimi',
|
||||
],
|
||||
|
||||
'subscription' => [
|
||||
'unsubscribe' => 'Bültenden Çık',
|
||||
'subscribe' => 'Abone Ol',
|
||||
'subscribed' => 'Abone kaydınız yapılmış durumda.',
|
||||
'not-subscribed' => 'Bülten aboneliğine kaydınız yapılamadı, lütfen tekrar deneyin.',
|
||||
'already' => 'Bülten aboneliğine kayıtlı durumdasınız.',
|
||||
'unsubscribed' => 'Bülten aboneliğinden çıkış yapıtınız.',
|
||||
'already-unsub' => 'Daha önceden bültenden çıkış yaptınız.'
|
||||
],
|
||||
|
||||
'search' => [
|
||||
'no-results' => 'Sonuç Bulunamadı',
|
||||
'page-title' => config('app.name') . ' - Arama',
|
||||
'found-results' => 'Arama Sonuçları',
|
||||
'found-result' => 'Arama Sonuçları'
|
||||
],
|
||||
|
||||
'reviews' => [
|
||||
'title' => 'Başlık',
|
||||
'add-review-page-title' => 'İnceleme Ekle',
|
||||
'write-review' => 'İnceleme Yaz',
|
||||
'review-title' => 'İncelemeye bir başlık giriniz',
|
||||
'product-review-page-title' => 'Ürün İnceleme',
|
||||
'rating-reviews' => 'Oylama & İncelemeler',
|
||||
'submit' => 'GÖNDER',
|
||||
'delete-all' => 'Tüm incelemeler başarıyla silindi.',
|
||||
'ratingreviews' => ':rating Oylama & :review İnceleme',
|
||||
'star' => 'Yıldız',
|
||||
'percentage' => ':percentage %',
|
||||
'id-star' => 'star',
|
||||
'name' => 'Adı',
|
||||
],
|
||||
|
||||
'customer' => [
|
||||
'signup-text' => [
|
||||
'account_exists' => 'Hesabınız var mı?',
|
||||
'title' => 'Giriş Yapın'
|
||||
],
|
||||
|
||||
'signup-form' => [
|
||||
'page-title' => 'Yeni Müşteri Kaydı Oluşturun',
|
||||
'title' => 'Kaydol',
|
||||
'firstname' => 'Adınız',
|
||||
'lastname' => 'Soyadınız',
|
||||
'email' => 'E-Mail',
|
||||
'password' => 'Parola',
|
||||
'confirm_pass' => 'Parola (tekrar)',
|
||||
'button_title' => 'Kaydol',
|
||||
'agree' => 'Kabul',
|
||||
'terms' => 'Koşullar',
|
||||
'conditions' => 'Şartlar',
|
||||
'using' => 'bu web sitesini kullanarak',
|
||||
'agreement' => 'Anlaşma',
|
||||
'success' => 'Hesap başarıyla oluşturuldu.',
|
||||
'success-verify' => 'Hesap başarıyla oluşturuldu. Devam edebilmek için lütfen e-mail adresinizi doğrulayın.',
|
||||
'success-verify-email-unsent' => 'Hesap başarıyla oluşturuldu; ancak doğrulama maili gönderilemedi.',
|
||||
'failed' => 'Hata Oluştu! Hesabınız oluşturulamadı, lütfen tekrar deneyiniz.',
|
||||
'already-verified' => 'Hesabınız zaten doğrulanmış, lütfen yeni bir doğrulama maili talep edin.',
|
||||
'verification-not-sent' => 'Doğrulama maili gönderilirken hata oluştu, lütfen tekrar deneyin.',
|
||||
'verification-sent' => 'Doğrulama maili gönderildi',
|
||||
'verified' => 'Hesabınız başarıyla doğrulandı. Şimdi giriş yapabilirsiniz.',
|
||||
'verify-failed' => 'Hesabınızı doğrulayamadık.',
|
||||
'dont-have-account' => 'Kayıtlı hesabınız bulunmuyor.',
|
||||
'customer-registration' => 'Müşteri Kaydı Başarıyla Oluşturuldu.'
|
||||
],
|
||||
|
||||
'login-text' => [
|
||||
'no_account' => 'Hesabınız yok mu?',
|
||||
'title' => 'Kaydolun',
|
||||
],
|
||||
|
||||
'login-form' => [
|
||||
'page-title' => 'Müşteri Girişi',
|
||||
'title' => 'Giriş Yap',
|
||||
'email' => 'E-Mail',
|
||||
'password' => 'Parola',
|
||||
'forgot_pass' => 'Parolanızı mı unuttunuz?',
|
||||
'button_title' => 'Giriş Yap',
|
||||
'remember' => 'Beni Hatırla',
|
||||
'footer' => '© Copyright :year Webkul Software, Tüm hakları saklıdır.',
|
||||
'invalid-creds' => 'Lütfen bilgilerinizi kontrol edip tekrar deneyiniz.',
|
||||
'verify-first' => 'Öncelikle mail adresinizi doğrulayınız.',
|
||||
'not-activated' => 'Yönetici aktivasyonu gerekiyor.',
|
||||
'resend-verification' => 'Doğrulama mailini yeniden gönder'
|
||||
],
|
||||
|
||||
'forgot-password' => [
|
||||
'title' => 'Parolayı Sıfırla',
|
||||
'email' => 'E-Mail',
|
||||
'submit' => 'Parola Sıfırlama Maili Gönder',
|
||||
'page_title' => 'Parolanızı mı unuttunuz?'
|
||||
],
|
||||
|
||||
'reset-password' => [
|
||||
'title' => 'Parolayı Sıfırla',
|
||||
'email' => 'Kayıtlı Mail Adresi',
|
||||
'password' => 'Parola',
|
||||
'confirm-password' => 'Parola Doğrula',
|
||||
'back-link-title' => 'Giriş Sayfasına Dön',
|
||||
'submit-btn-title' => 'Parola Sıfırla'
|
||||
],
|
||||
|
||||
'account' => [
|
||||
'dashboard' => 'Profil Düzenle',
|
||||
'menu' => 'Menü',
|
||||
|
||||
'profile' => [
|
||||
'index' => [
|
||||
'page-title' => 'Profil',
|
||||
'title' => 'Profil',
|
||||
'edit' => 'Düzenle',
|
||||
],
|
||||
|
||||
'edit-success' => 'Profil başarıyla güncellendi.',
|
||||
'edit-fail' => 'Profil güncellenirken hata oluştu, lütfen tekrar deneyin.',
|
||||
'unmatch' => 'Eski parolanız eşleşmiyor, lütfen tekrar deneyin.',
|
||||
|
||||
'fname' => 'Adınız',
|
||||
'lname' => 'Soyadınız',
|
||||
'gender' => 'Cinsiyet',
|
||||
'other' => 'Diğer',
|
||||
'male' => 'Erkek',
|
||||
'female' => 'Kadın',
|
||||
'dob' => 'Doğum Tarihi',
|
||||
'phone' => 'Telefon',
|
||||
'email' => 'E-Mail',
|
||||
'opassword' => 'Önceki Parola',
|
||||
'password' => 'Parola',
|
||||
'cpassword' => 'Parola Doğrula',
|
||||
'submit' => 'Profil Güncelle',
|
||||
|
||||
'edit-profile' => [
|
||||
'title' => 'Profil Düzenle',
|
||||
'page-title' => 'Profil Bilgilerini Düzenle'
|
||||
]
|
||||
],
|
||||
|
||||
'address' => [
|
||||
'index' => [
|
||||
'page-title' => 'Adres',
|
||||
'title' => 'Adres',
|
||||
'add' => 'Adres Ekle',
|
||||
'edit' => 'Düzenşe',
|
||||
'empty' => 'Henüz kayıtlı adresiniz bulunmuyor. Eklemek için lütfen aşağıdaki linki tıklayınız.',
|
||||
'create' => 'Adres Ekle',
|
||||
'delete' => 'Sil',
|
||||
'make-default' => 'Varsayılan Yap',
|
||||
'default' => 'Varsayılan',
|
||||
'contact' => 'İletişim',
|
||||
'confirm-delete' => 'Bu adresi silmek istediğinizden emin misiniz?',
|
||||
'default-delete' => 'Varsayılan adres değiştirilemez.',
|
||||
'enter-password' => 'Parolanızı Giriniz',
|
||||
],
|
||||
|
||||
'create' => [
|
||||
'page-title' => 'Adres Formu Ekle',
|
||||
'company_name' => 'Şirket Adı',
|
||||
'first_name' => 'Adınız',
|
||||
'last_name' => 'Soyadınız',
|
||||
'vat_id' => 'Vergi No',
|
||||
'vat_help_note' => '[Not: Vergi no ile beraber ülke kodunu kullanın. Örn. INV01234567891]',
|
||||
'title' => 'Adres Ekle',
|
||||
'street-address' => 'Sokak Adresi',
|
||||
'country' => 'Ülke',
|
||||
'state' => 'Şehir',
|
||||
'select-state' => 'Şehir seçiniz.',
|
||||
'city' => 'İlçe',
|
||||
'postcode' => 'Posta Kodu',
|
||||
'phone' => 'Telefon',
|
||||
'submit' => 'Adres Kaydet',
|
||||
'success' => 'Adres başarıyla kaydedildi.',
|
||||
'error' => 'Adres eklenirken hata oluştu!'
|
||||
],
|
||||
|
||||
'edit' => [
|
||||
'page-title' => 'Adres Düzenle',
|
||||
'company_name' => 'Şirket Adı',
|
||||
'first_name' => 'Adınız',
|
||||
'last_name' => 'Soyadınız',
|
||||
'vat_id' => 'Vergi No',
|
||||
'title' => 'Adres Düzenle',
|
||||
'street-address' => 'Sokak Adresi',
|
||||
'submit' => 'Adres Kaydet',
|
||||
'success' => 'Adres Başarıyla Güncellendi.',
|
||||
],
|
||||
'delete' => [
|
||||
'success' => 'Adres başarıyla silindi.',
|
||||
'failure' => 'Adres silinirken hata oluştu!',
|
||||
'wrong-password' => 'Parolanızı hatalı girdiniz!'
|
||||
]
|
||||
],
|
||||
|
||||
'order' => [
|
||||
'index' => [
|
||||
'page-title' => 'Siparişler',
|
||||
'title' => 'Siparişler',
|
||||
'order_id' => 'Sipariş No',
|
||||
'date' => 'Tarih',
|
||||
'status' => 'Durum',
|
||||
'total' => 'Toplam',
|
||||
'order_number' => 'Sipariş No',
|
||||
'processing' => 'İşleniyor',
|
||||
'completed' => 'Tamamlandı',
|
||||
'canceled' => 'İptal Edildi',
|
||||
'closed' => 'Kapalı',
|
||||
'pending' => 'Bekliyor',
|
||||
'pending-payment' => 'Ödeme Bekliyor',
|
||||
'fraud' => 'Geçersiz'
|
||||
],
|
||||
|
||||
'view' => [
|
||||
'page-tile' => 'Sipariş #:order_id',
|
||||
'info' => 'Bilgi',
|
||||
'placed-on' => 'Sipariş Tarihi',
|
||||
'products-ordered' => 'Sipariş Edilen Ürünler',
|
||||
'invoices' => 'Faturalar',
|
||||
'shipments' => 'Teslimatlar',
|
||||
'SKU' => 'Barkod',
|
||||
'product-name' => 'Ürün Adı',
|
||||
'qty' => 'Miktar',
|
||||
'item-status' => 'Ürün Durumu',
|
||||
'item-ordered' => 'Sipariş Verildi (:qty_ordered)',
|
||||
'item-invoice' => 'Fatura Oluşturuldu (:qty_invoiced)',
|
||||
'item-shipped' => 'Kargoya Verildi (:qty_shipped)',
|
||||
'item-canceled' => 'İptal Edildi (:qty_canceled)',
|
||||
'item-refunded' => 'İade Edildi (:qty_refunded)',
|
||||
'price' => 'Fiyat',
|
||||
'total' => 'Toplam',
|
||||
'subtotal' => 'Ara Toplam',
|
||||
'shipping-handling' => 'Teslimat & Dağıtım',
|
||||
'tax' => 'Vergi',
|
||||
'discount' => 'İndirim',
|
||||
'tax-percent' => 'Vergi Yüzdesi',
|
||||
'tax-amount' => 'Vergi Miktarı',
|
||||
'discount-amount' => 'İndirim Miktarı',
|
||||
'grand-total' => 'Genel Toplam',
|
||||
'total-paid' => 'Toplam Ödenen',
|
||||
'total-refunded' => 'Toplam İade',
|
||||
'total-due' => 'Toplam Kalan',
|
||||
'shipping-address' => 'Teslimat Adresi',
|
||||
'billing-address' => 'Fatura Adresi',
|
||||
'shipping-method' => 'Teslimat Şekli',
|
||||
'payment-method' => 'Ödeme Şekli',
|
||||
'individual-invoice' => 'Fatura #:invoice_id',
|
||||
'individual-shipment' => 'Teslimat #:shipment_id',
|
||||
'print' => 'Yazdır',
|
||||
'invoice-id' => 'Fatura No',
|
||||
'order-id' => 'Sipariş No',
|
||||
'order-date' => 'Sipariş Tarihi',
|
||||
'bill-to' => 'Fatura Edilen',
|
||||
'ship-to' => 'Teslim Edilen',
|
||||
'contact' => 'İletişim',
|
||||
'refunds' => 'İadeler',
|
||||
'individual-refund' => 'İade #:refund_id',
|
||||
'adjustment-refund' => 'İade Düzenlemesi',
|
||||
'adjustment-fee' => 'Düzenleme Bedeli',
|
||||
'cancel-btn-title' => 'İptal',
|
||||
'tracking-number' => 'Takip No',
|
||||
'cancel-confirm-msg' => 'Bu siparişi silmek istediğinizden emin misiniz?'
|
||||
]
|
||||
],
|
||||
|
||||
'wishlist' => [
|
||||
'page-title' => 'Dilek Listesi',
|
||||
'title' => 'Dilek Listesi',
|
||||
'deleteall' => 'Tümünü Sil',
|
||||
'moveall' => 'Tüm Ürünleri Sepete Taşı',
|
||||
'move-to-cart' => 'Sepete Taşı',
|
||||
'error' => 'Ürün dilek listesine eklenemiyor, lütfen daha sonra tekrar deneyin.',
|
||||
'add' => 'Ürün dilek listesine başarıyla eklendi.',
|
||||
'remove' => 'Ürün dilek listesinden başarıyla kaldırıldı.',
|
||||
'moved' => 'Ürün alışveriş sepetine başarıyla taşındı.',
|
||||
'option-missing' => 'Ürün seçenekleri bulunamadı; bu yüzden dilek listesine taşınamadı.',
|
||||
'move-error' => 'Ürün dilek listesine taşınamadı, lütfen tekrar deneyin.',
|
||||
'success' => 'Ürün dilek listesine taşındı.',
|
||||
'failure' => 'Ürün dilek listesine taşınamadı, lütfen tekrar deneyin.',
|
||||
'already' => 'Ürün dilek listenizde yer alıyor.',
|
||||
'removed' => 'Ürün dilek listesinden kaldırıldı.',
|
||||
'remove-fail' => 'Ürün dilek listesinden kaldırılamadı, lütfen tekrar deneyin.',
|
||||
'empty' => 'Dilek listenizde ürün bulunmuyor.',
|
||||
'remove-all-success' => 'Dilek listenizdeki tüm ürünler kaldırıldı.',
|
||||
],
|
||||
|
||||
'downloadable_products' => [
|
||||
'title' => 'İndirilebilir Ürünler',
|
||||
'order-id' => 'Sipariş No',
|
||||
'date' => 'Tarih',
|
||||
'name' => 'Başlık',
|
||||
'status' => 'Durum',
|
||||
'pending' => 'Bekliyor',
|
||||
'available' => 'Hazır',
|
||||
'expired' => 'Süresi Doldu',
|
||||
'remaining-downloads' => 'Kalan İndirme',
|
||||
'unlimited' => 'Sınırsız',
|
||||
'download-error' => 'İndirme linki süresi doldu.'
|
||||
],
|
||||
|
||||
'review' => [
|
||||
'index' => [
|
||||
'title' => 'İncelemeler',
|
||||
'page-title' => 'İncelemeler'
|
||||
],
|
||||
|
||||
'view' => [
|
||||
'page-tile' => 'İnceleme #:id',
|
||||
]
|
||||
]
|
||||
]
|
||||
],
|
||||
|
||||
'products' => [
|
||||
'layered-nav-title' => 'Ürün Filtrele',
|
||||
'price-label' => 'Olabildiğince Düşük',
|
||||
'remove-filter-link-title' => 'Tümünü Temizle',
|
||||
'filter-to' => ' - ',
|
||||
'sort-by' => 'Sıralama Şekli',
|
||||
'from-a-z' => 'A-Z',
|
||||
'from-z-a' => 'Z-A',
|
||||
'newest-first' => 'Yeniden Eskiye',
|
||||
'oldest-first' => 'Eskiden Yeniye',
|
||||
'cheapest-first' => 'Ucuzdan Pahallıya',
|
||||
'expensive-first' => 'Pahallıdan Ucuza',
|
||||
'show' => 'Göster',
|
||||
'pager-info' => 'Toplam :total üründen :showing adet ürün görüntüleniyor.',
|
||||
'description' => 'Açıklama',
|
||||
'specification' => 'Şartname',
|
||||
'total-reviews' => ':total İnceleme',
|
||||
'total-rating' => ':total_rating Oylama & :total_reviews İnceleme',
|
||||
'by' => ':name\'e göre',
|
||||
'up-sell-title' => 'İlginize çekebilecek başka ürünler bulduk!',
|
||||
'related-product-title' => 'Benzer Ürünler',
|
||||
'cross-sell-title' => 'Daha fazla seçenek',
|
||||
'reviews-title' => 'Oylama & İnceleme',
|
||||
'write-review-btn' => 'İnceleme Yaz',
|
||||
'choose-option' => 'Seçenek seçin',
|
||||
'sale' => 'Satışta',
|
||||
'new' => 'Yeni',
|
||||
'empty' => 'Bu kategoride ürün bulunamadı.',
|
||||
'add-to-cart' => 'Sepete Ekle',
|
||||
'book-now' => 'Hemen Ayırt',
|
||||
'buy-now' => 'Satın Al',
|
||||
'whoops' => 'Ops!',
|
||||
'quantity' => 'Miktar',
|
||||
'in-stock' => 'Stokta',
|
||||
'out-of-stock' => 'Stokta Yok',
|
||||
'view-all' => 'Tümünü Göster',
|
||||
'select-above-options' => 'Lütfen öncelikle seçenek seçin',
|
||||
'less-quantity' => 'Geçerli miktar giriniz.',
|
||||
'samples' => 'Örnekler',
|
||||
'links' => 'Linkler',
|
||||
'sample' => 'Örnek',
|
||||
'name' => 'Adı',
|
||||
'qty' => 'Miktar',
|
||||
'starting-at' => 'Başlangıç Fiyatı',
|
||||
'customize-options' => 'Seçenekleri Özelleştir',
|
||||
'choose-selection' => 'Seçim Yapın',
|
||||
'your-customization' => 'Özelleştirmeniz',
|
||||
'total-amount' => 'Toplam Miktar',
|
||||
'none' => 'Hiçbiri',
|
||||
'available-for-order' => 'Sipariş İçin Uygun'
|
||||
],
|
||||
|
||||
// 'reviews' => [
|
||||
// 'empty' => 'You Have Not Reviewed Any Of Product Yet'
|
||||
// ]
|
||||
|
||||
'buynow' => [
|
||||
'no-options' => 'Ürünü satın almadan önce lütfen seçenek seçin.'
|
||||
],
|
||||
|
||||
'checkout' => [
|
||||
'cart' => [
|
||||
'integrity' => [
|
||||
'missing_fields' => 'Bu ürün için zorunlu bazı alanlar girilmemiş.',
|
||||
'missing_options' => 'Bu ürün için seçenek girilmemiş.',
|
||||
'missing_links' => 'Bu ürün için indirilebilir linkler girilmemiş.',
|
||||
'qty_missing' => 'En az bir adet ürün girilmelidir.',
|
||||
'qty_impossible' => 'Bu üründen birden fazla adet girilemez.'
|
||||
],
|
||||
'create-error' => 'Alışveriş sepeti oluşturulurken hata meydana geldi!',
|
||||
'title' => 'Alışveriş Sepeti',
|
||||
'empty' => 'Alışveriş sepetiniz boş',
|
||||
'update-cart' => 'Sepeti Güncelle',
|
||||
'continue-shopping' => 'Alışverişe Devam Et',
|
||||
'proceed-to-checkout' => 'Satın Al',
|
||||
'remove' => 'Kaldır',
|
||||
'remove-link' => 'Kaldır',
|
||||
'move-to-wishlist' => 'Dilek Listesine Ekle',
|
||||
'move-to-wishlist-success' => 'Dilek listesine başarıyla eklendi.',
|
||||
'move-to-wishlist-error' => 'Dilek listesine eklenirken hata oluştu, lütfen tekrar deneyin.',
|
||||
'add-config-warning' => 'Sepete eklemeden önce lütfen seçim yapınız.',
|
||||
'quantity' => [
|
||||
'quantity' => 'Miktar',
|
||||
'success' => 'Sepet başarıyla güncellendi!',
|
||||
'illegal' => 'Miktar en az 1 olmalıdır.',
|
||||
'inventory_warning' => 'Girilen miktar mevcut değil, lütfen yeniden deneyin.',
|
||||
'error' => 'Ürün güncellemesi yapılamıyor, lütfen tekrar deneyin.'
|
||||
],
|
||||
|
||||
'item' => [
|
||||
'error_remove' => 'Sepetten kaldırılacak ürün bulunamadı.',
|
||||
'success' => 'Ürün başarıyla sepete eklendi.',
|
||||
'success-remove' => 'Ürün sepetten başarıyla kaldırıldı.',
|
||||
'error-add' => 'Ürün sepete eklenirken hata oluştu, lütfen tekrar deneyin.',
|
||||
],
|
||||
'quantity-error' => 'Girilen miktar mevcut değil.',
|
||||
'cart-subtotal' => 'Sepet Ara Toplam',
|
||||
'cart-remove-action' => 'Sepeti boşaltmak istediğinizden emin misiniz?',
|
||||
'partial-cart-update' => 'Sadece bazı ürünler güncellendi.',
|
||||
'link-missing' => '',
|
||||
'event' => [
|
||||
'expired' => 'Bu eylemin geçerliliği sona erdi.'
|
||||
]
|
||||
],
|
||||
|
||||
'onepage' => [
|
||||
'title' => 'Satın Al',
|
||||
'information' => 'Bilgiler',
|
||||
'shipping' => 'Teslimat',
|
||||
'payment' => 'Ödeme',
|
||||
'complete' => 'Tamamla',
|
||||
'review' => 'İnceleme',
|
||||
'billing-address' => 'Fatura Adresi',
|
||||
'sign-in' => 'Giriş Yap',
|
||||
'company-name' => 'Şirket Adı',
|
||||
'first-name' => 'Ad',
|
||||
'last-name' => 'Soyad',
|
||||
'email' => 'E-Mail',
|
||||
'address1' => 'Adres',
|
||||
'city' => 'İlçe',
|
||||
'state' => 'Şehir',
|
||||
'select-state' => 'Şehir seçiniz',
|
||||
'postcode' => 'Posta Kodu',
|
||||
'phone' => 'Telefon',
|
||||
'country' => 'Ülke',
|
||||
'order-summary' => 'Sipariş Özeti',
|
||||
'use_for_shipping' => 'Teslimat adresi olarak kullan',
|
||||
'continue' => 'Devam et',
|
||||
'shipping-method' => 'Teslimat Türü Seç',
|
||||
'payment-methods' => 'Ödeme Türü Seç',
|
||||
'payment-method' => 'Ödeme Türü',
|
||||
'summary' => 'Sipariş Özeti',
|
||||
'price' => 'Fiyat',
|
||||
'quantity' => 'Miktar',
|
||||
'shipping-address' => 'Teslimat Adresi',
|
||||
'contact' => 'İletişim',
|
||||
'place-order' => 'Siparişi Oluştur',
|
||||
'new-address' => 'Yeni Adres Ekle',
|
||||
'save_as_address' => 'Adresi Kaydet',
|
||||
'apply-coupon' => 'Kuponu Uygula',
|
||||
'amt-payable' => 'Ödenecek Tutar',
|
||||
'got' => 'Alınan',
|
||||
'free' => 'Ücretsiz',
|
||||
'coupon-used' => 'Kullanılan Kupon',
|
||||
'applied' => 'Uygulanan',
|
||||
'back' => 'Geri',
|
||||
'cash-desc' => 'Kapıda Ödeme',
|
||||
'money-desc' => 'Havale/EFT',
|
||||
'paypal-desc' => 'Paypal',
|
||||
'free-desc' => 'Ücretsiz Kargo',
|
||||
'flat-desc' => 'Sabit Ücret',
|
||||
'password' => 'Parola',
|
||||
'login-exist-message' => 'Kayıtlı hesabınız bulunuyor, lütfen giriş yapınız ya da ziyaretçi olarak satın alın.',
|
||||
'enter-coupon-code' => 'Kupon Kodu Girin'
|
||||
],
|
||||
|
||||
'total' => [
|
||||
'order-summary' => 'Sipariş Özeti',
|
||||
'sub-total' => 'Ürünler',
|
||||
'grand-total' => 'Genel Toplam',
|
||||
'delivery-charges' => 'Kargo Ücreti',
|
||||
'tax' => 'Vergi',
|
||||
'discount' => 'İndirim',
|
||||
'price' => 'fiyat',
|
||||
'disc-amount' => 'İndirim Miktarı',
|
||||
'new-grand-total' => 'Yeni Genel Toplam',
|
||||
'coupon' => 'Kupon',
|
||||
'coupon-applied' => 'Uygulanan Kupon',
|
||||
'remove-coupon' => 'Kupon Kaldır',
|
||||
'cannot-apply-coupon' => 'Kupon Uygulanamaz',
|
||||
'invalid-coupon' => 'Kupon kodu geçersiz.',
|
||||
'success-coupon' => 'Kupon kodu başarıyla uygulandı.',
|
||||
'coupon-apply-issue' => 'Kupon kodu uygulanamaz.'
|
||||
],
|
||||
|
||||
'success' => [
|
||||
'title' => 'Sipariş başarıyla oluşturuldu.',
|
||||
'thanks' => 'Sipariş için teşekkür ederiz!',
|
||||
'order-id-info' => 'Sipariş numaranız #:order_id',
|
||||
'info' => 'Size sipariş detayları ve takip bilgilerini mail olarak ileteceğiz.'
|
||||
]
|
||||
],
|
||||
|
||||
'mail' => [
|
||||
'order' => [
|
||||
'subject' => 'Yeni Sipariş Doğrulaması',
|
||||
'heading' => 'Sipariş Doğrulaması',
|
||||
'dear' => 'Sayın :customer_name',
|
||||
'dear-admin' => 'Sayın :admin_name',
|
||||
'greeting' => 'Sipariş verdiğiniz için teşekkür ederiz. :order_id nolu sipariş :created_at tarihinde oluşturuldu.',
|
||||
'greeting-admin' => ':order_id no\'lu sipariş :created_at tarihinde verildi.',
|
||||
'summary' => 'Sipariş Özeti',
|
||||
'shipping-address' => 'Teslimat Adresi',
|
||||
'billing-address' => 'Fatura Adresi',
|
||||
'contact' => 'İletişim',
|
||||
'shipping' => 'Teslimat Şekli',
|
||||
'payment' => 'Ödeme Şekli',
|
||||
'price' => 'Fiyat',
|
||||
'quantity' => 'Miktar',
|
||||
'subtotal' => 'Ara Toplam',
|
||||
'shipping-handling' => 'Teslimat & Dağıtım',
|
||||
'tax' => 'Vergi',
|
||||
'discount' => 'İndirim',
|
||||
'grand-total' => 'Genel Toplam',
|
||||
'final-summary' => 'Bizi tercih ettiğiniz için teşekkür ederiz. Ürün kargoya teslim edildikten sonra takip numarası iletilecektir.',
|
||||
'help' => 'Soru ve görüşleriniz için lütfen bizimle iletişime geçiniz: :support_email',
|
||||
'thanks' => 'Teşekkürler!',
|
||||
|
||||
'comment' => [
|
||||
'subject' => 'Siparişinize yeni yorum yapıldı.',
|
||||
'dear' => 'Sayın :customer_name',
|
||||
'final-summary' => 'Bizi tercih ettiğiniz için teşekkür ederiz.',
|
||||
'help' => 'Soru ve görüşleriniz için lütfen bizimle iletişime geçiniz: :support_email',
|
||||
'thanks' => 'Teşekkürler!',
|
||||
],
|
||||
|
||||
'cancel' => [
|
||||
'subject' => 'Sipariş İptal Doğrulaması',
|
||||
'heading' => 'Sipariş İptal Edildi',
|
||||
'dear' => 'Sayın :customer_name',
|
||||
'greeting' => '#:order_id no\'lu siparişiniz :created_at tarihinde iptal edilmiştir.',
|
||||
'summary' => 'Sipariş Özeti',
|
||||
'shipping-address' => 'Teslimat Adresi',
|
||||
'billing-address' => 'Fatura Adresi',
|
||||
'contact' => 'İletişim',
|
||||
'shipping' => 'Teslimat Şekli',
|
||||
'payment' => 'Ödeme Şekli',
|
||||
'subtotal' => 'Ara Toplam',
|
||||
'shipping-handling' => 'Teslimat & Dağıtım',
|
||||
'tax' => 'Vergi',
|
||||
'discount' => 'İndirim',
|
||||
'grand-total' => 'Genel Toplam',
|
||||
'final-summary' => 'Bizi tercih ettiğiniz için teşekkür ederiz.',
|
||||
'help' => 'Soru ve görüşleriniz için lütfen bizimle iletişime geçiniz: :support_email',
|
||||
'thanks' => 'Teşekkürler!',
|
||||
]
|
||||
],
|
||||
|
||||
'invoice' => [
|
||||
'heading' => '#:order_id no\'lu siparişiniz için #:invoice_id no\'lu fatura oluşturuldu.',
|
||||
'subject' => '#:order_id no\'lu siparişinizin faturası',
|
||||
'summary' => 'Fatura Özeti',
|
||||
],
|
||||
|
||||
'shipment' => [
|
||||
'heading' => '#:order_id no\'lu siparişiniz için #:shipment_id no\'lu teslimat oluşturuldu.',
|
||||
'inventory-heading' => '#:order_id no\'lu siparişiniz için #:shipment_id no\'lu teslimat oluşturuldu.',
|
||||
'subject' => '#:order_id no\'lu siparişinizin teslimatı',
|
||||
'inventory-subject' => '#:order_id no\'lu siparişiniz için teslimat oluşturuldu.',
|
||||
'summary' => 'Teslimat Özeti',
|
||||
'carrier' => 'Kargo Şirketi',
|
||||
'tracking-number' => 'Takip Numarası',
|
||||
'greeting' => ':order_id no\'lu sipariş :created_at tarihinde oluşturuldu.',
|
||||
],
|
||||
|
||||
'refund' => [
|
||||
'heading' => '#:order_id siparişi için #:refund_id iadesi',
|
||||
'subject' => '#:order_id siparişi iadesi',
|
||||
'summary' => 'İade Özeti',
|
||||
'adjustment-refund' => 'İade Düzenlemesi',
|
||||
'adjustment-fee' => 'Düzenleme Bedeli'
|
||||
],
|
||||
|
||||
'forget-password' => [
|
||||
'subject' => 'Müşteri Parolası Sıfırlama',
|
||||
'dear' => 'Sayın :name',
|
||||
'info' => 'Parola sıfırlama talebinde bulunduğunuz için bu maili hesabınıza kayıtlı mail adresinize gönderdik.',
|
||||
'reset-password' => 'Parola Yenile',
|
||||
'final-summary' => 'Eğer parola yenileme talebinde bulunmadıysanız bu maili silebilirsiniz.',
|
||||
'thanks' => 'Teşekkürler!'
|
||||
],
|
||||
|
||||
'customer' => [
|
||||
'new' => [
|
||||
'dear' => 'Sayın :customer_name',
|
||||
'username-email' => 'KullanıcıAdı/EMail',
|
||||
'subject' => 'Yeni Müşteri Kaydı',
|
||||
'password' => 'Parola',
|
||||
'summary' => 'Hesabınız başarıyla oluşturuldu. Detaylar aşağıda yer almaktadır:',
|
||||
'thanks' => 'Teşekkürler!',
|
||||
],
|
||||
|
||||
'registration' => [
|
||||
'subject' => 'Yeni Müşteri Kaydı',
|
||||
'customer-registration' => 'Müşteri Başarıyla Oluşturuldu',
|
||||
'dear' => 'Sayın :customer_name',
|
||||
'greeting' => 'Bizi tercih ettiğiniz için teşekkür ederiz. Aramıza hoşgeldiniz!',
|
||||
'summary' => 'Hesabınız başarıyla oluşturuldu; hemen kayıtlı bilgilerinizle giriş yapabilirsiniz. Giriş yaptıktan sonra, yaptığınız siparişleri inceleme, dilek listesine erişim ve hesap bilgilerini düzenleme gibi pek çok seçeneklere ulaşabilirsiniz.',
|
||||
'thanks' => 'Teşekkürler!',
|
||||
],
|
||||
|
||||
'verification' => [
|
||||
'heading' => config('app.name') . ' - Mail Doğrulaması',
|
||||
'subject' => 'Doğrulama Maili',
|
||||
'verify' => 'Hesabınızı Doğrulayın',
|
||||
'summary' => 'Bu mail adresi hesabınızı doğrulamanız için gönderildi.
|
||||
Bu mail adresinin hesabınızla ilişkisini tamamlamak için lütfen linke tıklayınız.'
|
||||
],
|
||||
|
||||
'subscription' => [
|
||||
'subject' => 'Bülten Maili',
|
||||
'greeting' => 'Aramıza Hoşgeldiniz: ' . config('app.name') . ' - Bülten Aboneliği',
|
||||
'unsubscribe' => 'Bültenden Çıkış',
|
||||
'summary' => 'Gelen kutunuzda yer verdiğiniz için teşekkür ederiz. ' . config('app.name') . ' maillerini almak istemezseniz bültenden çıkış yapabilirsiniz.'
|
||||
]
|
||||
]
|
||||
],
|
||||
|
||||
'webkul' => [
|
||||
'copy-right' => '© Copyright :year Webkul Software, Tüm Hakları Saklıdır.',
|
||||
],
|
||||
|
||||
'response' => [
|
||||
'create-success' => ':name başarıyla oluşturuldu.',
|
||||
'update-success' => ':name başarıyla güncellendi.',
|
||||
'delete-success' => ':name başarıyla silindi.',
|
||||
'submit-success' => ':name başarıyla iletildi.'
|
||||
],
|
||||
];
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
<?php
|
||||
return [
|
||||
'datagrid' => [
|
||||
'actions' => 'Eylemler',
|
||||
'id' => 'Index sütunları sadece sıfırdan daha büyük değere sahip olmalı',
|
||||
|
||||
'massaction' => [
|
||||
'mass-delete-confirm' => 'Seçili :resource kayıtlarını silmek istediğinizden emin misiniz?',
|
||||
'mass-update-status' => 'Seçili :resource kayıtlarının durumunu güncellemek istediğinizden emin misiniz?',
|
||||
'delete' => 'Bu işlemi gerçekleştirmek istediğinizden emin misiniz?',
|
||||
'edit' => ':resource kaydını düzenlemek istediğinizden emin misiniz?',
|
||||
],
|
||||
|
||||
'zero-index' => 'Index sütunları sadece sıfırdan büyük değere sahip olmalı',
|
||||
'no-records' => 'Kayıt Bulunamadı',
|
||||
'filter-fields-missing' => 'Zorunlu alanlardan bazıları boş, lütfen sütun, durum ve değeri doğru şekilde kontrol edin',
|
||||
'click_on_action' => 'Bu işlemi gerçekleştirmek istediğinizden emin misiniz?',
|
||||
'search' => 'Arama Yapın...',
|
||||
'filter' => 'Filtrele',
|
||||
'column' => 'Sütun Seç',
|
||||
'condition' => 'Durum Seç',
|
||||
'contains' => 'İçerir',
|
||||
'ncontains' => 'İçermez',
|
||||
'equals' => 'Eşit',
|
||||
'nequals' => 'Eşit değil',
|
||||
'greater' => 'Daha büyük',
|
||||
'less' => 'Daha küçük',
|
||||
'greatere' => 'Büyük ya da eşit',
|
||||
'lesse' => 'Küçük ya da eşit',
|
||||
'value' => 'Değer seçin',
|
||||
'true' => 'Doğru / Aktif',
|
||||
'false' => 'Yanlış / Pasif',
|
||||
'between' => 'Arasında',
|
||||
'apply' => 'Uygula',
|
||||
'items-per-page' => 'Sayfa Başına Kayıt',
|
||||
'value-here' => 'Değeri girin',
|
||||
'numeric-value-here' => 'Satusal değeri girin',
|
||||
'submit' => 'Kaydet'
|
||||
]
|
||||
];
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'enter-attribute' => ':attribute Giriniz',
|
||||
'select-attribute' => ':attribute Seçiniz'
|
||||
];
|
||||
|
|
@ -0,0 +1,294 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'admin' => [
|
||||
'system' => [
|
||||
'velocity' => [
|
||||
'general' => 'Genel',
|
||||
'category' => 'Kategori',
|
||||
'settings' => 'Ayarlar',
|
||||
'extension_name' => 'Velocity Teması',
|
||||
'error-module-inactive' => 'Uyarı: Velocity teması pasif durumda!',
|
||||
],
|
||||
|
||||
'settings' => [
|
||||
'channels'=> [
|
||||
'subscription_bar' => 'Abonelik çubuğu içeriği'
|
||||
],
|
||||
],
|
||||
|
||||
'general' => [
|
||||
'status' => 'Durum',
|
||||
'active' => 'Aktif',
|
||||
'inactive' => 'Pasif',
|
||||
],
|
||||
'category' => [
|
||||
'all' => 'Tümü',
|
||||
'left' => 'Sol',
|
||||
'right' => 'Sağ',
|
||||
'active' => 'Aktif',
|
||||
'custom' => 'Özel',
|
||||
'inactive' => 'Pasif',
|
||||
'image-alignment' => 'Görsel Hizalama',
|
||||
'icon-status' => 'Kategori İkon Durumu',
|
||||
'image-status' => 'Kategori Görsel Durumu',
|
||||
'sub-category-show' => 'Alt Kategori Göster',
|
||||
'image-height' => 'Görsel Yükseklik [Pixel]',
|
||||
'image-width' => 'Görsel Genişlik [Pixel]',
|
||||
'show-tooltip' => 'Kategori Aracını Göster',
|
||||
'num-sub-category' => 'Alt Kategori Sayısı',
|
||||
]
|
||||
],
|
||||
'layouts' => [
|
||||
'velocity' => 'Velocity',
|
||||
'cms-pages' => 'CMS Sayfaları',
|
||||
'meta-data' => 'Meta Bilgisi',
|
||||
'category-menu' => 'Kategori Menüsü',
|
||||
'header-content' => 'Üstbilgi İçeriği',
|
||||
],
|
||||
'contents' => [
|
||||
'self' => 'Aynı',
|
||||
'active' => 'Aktif',
|
||||
'new-tab' => 'Yeni Sekme',
|
||||
'inactive' => 'Pasif',
|
||||
'title' => 'İçerik Listesi',
|
||||
'select' => '-- Seçiniz --',
|
||||
'add-title' => 'İçerik Ekle',
|
||||
'btn-add-content' => 'İçerik Ekle',
|
||||
'save-btn-title' => 'İçerik Kaydet',
|
||||
'autocomplete' => '[Otomatik Tamamlama]',
|
||||
'no-result-found' => 'Kayıt bulunamadı.',
|
||||
'search-hint' => 'Ürün arayın...',
|
||||
'mass-delete-success' => 'Seçili içerik başarıyla silindi.',
|
||||
'tab' => [
|
||||
'page' => 'Sayfa Ayarları',
|
||||
'content' => 'İçerik Ayarları',
|
||||
'meta_content' => 'Meta Bilgisi',
|
||||
],
|
||||
'page' => [
|
||||
'title' => 'Başlık',
|
||||
'status' => 'Durum',
|
||||
'position' => 'Konum',
|
||||
],
|
||||
'content' => [
|
||||
'content-type' => 'İçerik Tipi',
|
||||
'custom-title' => 'Özel Başlık',
|
||||
'category-slug' => 'Kategori URL',
|
||||
'link-target' => 'Sayfa Link Hedefi',
|
||||
'custom-product' => 'Mağaza Ürünleri',
|
||||
'custom-heading' => 'Mağaza Başlığı',
|
||||
'catalog-type' => 'Ürün Katalog Tipi',
|
||||
'static-description' => 'İÇerik Açıklaması',
|
||||
'page-link' => 'Sayfa Linki [örn. http://example.com/../../]',
|
||||
],
|
||||
'datagrid' => [
|
||||
'id' => 'Id',
|
||||
'title' => 'Başlık',
|
||||
'status' => 'Durum',
|
||||
'position' => 'Konum',
|
||||
'content-type' => 'İçerik Tipi',
|
||||
]
|
||||
],
|
||||
'meta-data' => [
|
||||
'footer' => 'Alt Kısım',
|
||||
'title' => 'Velocity Meta Bilgisi',
|
||||
'activate-slider' => 'Slider Etkinleştir',
|
||||
'home-page-content' => 'Ana Sayfa İçeriği',
|
||||
'footer-left-content' => 'Alt Sol İçeriği',
|
||||
'subscription-content' => 'Abonelik Çubuğu İçeriği',
|
||||
'sidebar-categories' => 'Yan Kategoriler',
|
||||
'footer-left-raw-content' => '<p>Yazılımlar üretmeyi ve dünyada karşılaştığımız sorunları bu şekilde çözmeyi çok seviyoruz. Hedeflerimize büyük önem veriyor, en iyi olduğumuz teknoloji uzmanlığı ile kurumsal işleriniz için birin sınıf kullanıcı dostu yazılım ve uygulamalar oluşturmak için kaynaklarımıza yatırım yapıyoruz.</p>',
|
||||
'slider-path' => 'Slider Yolu',
|
||||
'category-logo' => 'Kategori Logosu',
|
||||
'product-policy' => 'Ürün Politikası',
|
||||
'update-meta-data' => 'Meta Bilgisi Güncelle',
|
||||
'product-view-image' => 'Ürün Görselini Görüntüle',
|
||||
'advertisement-two' => 'İki Görselli Reklam',
|
||||
'advertisement-one' => 'Rek Görsel Reklamı',
|
||||
'footer-middle-content' => 'Orta İçerikli Alt Kısım',
|
||||
'advertisement-four' => 'Dört Görselli Reklam',
|
||||
'advertisement-three' => 'Üç Görselli Reklam',
|
||||
'images' => 'Görseller',
|
||||
'general' => 'Genel',
|
||||
'add-image-btn-title' => 'Görsel Ekle'
|
||||
],
|
||||
'category' => [
|
||||
'save-btn-title' => 'Menü Kaydet',
|
||||
'title' => 'Kategori Menü Listesi',
|
||||
'add-title' => 'Menü İçeriği Ekle',
|
||||
'edit-title' => 'Menü İçeriği Düzenle',
|
||||
'btn-add-category' => 'Menü İçeriği Ekle',
|
||||
'datagrid' => [
|
||||
'category-id' => 'Kategori No',
|
||||
'category-name' => 'Kategori Adı',
|
||||
'category-icon' => 'Kategori İkonu',
|
||||
'category-status' => 'Durum',
|
||||
],
|
||||
'tab' => [
|
||||
'general' => 'Genel',
|
||||
],
|
||||
'status' => 'Durum',
|
||||
'active' => 'Aktif',
|
||||
'inactive' => 'Pasif',
|
||||
'select' => '-- Seçiniz --',
|
||||
'icon-class' => 'İkon Sınıfı',
|
||||
'select-category' => 'Kategori Seçiniz',
|
||||
'tooltip-content' => 'İpucu İçeriği',
|
||||
'mass-delete-success' => 'Seçili katego menüsü başarıyla silindi.',
|
||||
],
|
||||
'general' => [
|
||||
'locale_logo' => 'Dil Logosu',
|
||||
],
|
||||
],
|
||||
|
||||
'home' => [
|
||||
'view-all' => 'Tümünü Görüntüle',
|
||||
'add-to-cart' => 'Sepete Ekle',
|
||||
'hot-categories' => 'Güncel Kategoriler',
|
||||
'payment-methods' => 'Ödeme Metodu',
|
||||
'customer-reviews' => 'Müşteri İncelemesi',
|
||||
'shipping-methods' => 'Teslimat Şekli',
|
||||
'popular-categories' => 'Popüler Kategoriler',
|
||||
],
|
||||
|
||||
'header' => [
|
||||
'cart' => 'Alışveriş Sepeti',
|
||||
'guest' => 'Ziyaretçi',
|
||||
'logout' => 'Çıkış Yap',
|
||||
'title' => 'Hesap',
|
||||
'account' => 'Hesap',
|
||||
'profile' => 'Profil',
|
||||
'wishlist' => 'Dilek Listesi',
|
||||
'all-categories' => 'Tüm Kategoriler',
|
||||
'search-text' => 'Ürünleri arayın',
|
||||
'welcome-message' => 'Hoşgeldiniz, :customer_name',
|
||||
'dropdown-text' => 'Sepete Gözat, Siparişler & Dilek Listesi',
|
||||
],
|
||||
|
||||
'menu-navbar' => [
|
||||
'text-more' => 'Dahası',
|
||||
'text-category' => 'Kategorilere Gözat',
|
||||
],
|
||||
|
||||
'minicart' => [
|
||||
'cart' => 'Alışveriş Sepeti',
|
||||
'view-cart' => 'Sepeti Görüntüle',
|
||||
],
|
||||
|
||||
'checkout' => [
|
||||
'qty' => 'Miktar',
|
||||
'checkout' => 'Satın Al',
|
||||
'cart' => [
|
||||
'view-cart' => 'Sepeti Görüntüle',
|
||||
'cart-summary' => 'Sepet Özeti',
|
||||
],
|
||||
'items' => 'Ürünler',
|
||||
'subtotal' => 'Ara Toplam',
|
||||
'sub-total' => 'Ara Toplam',
|
||||
'proceed' => 'Satın Al',
|
||||
],
|
||||
|
||||
'customer' => [
|
||||
'compare' => [
|
||||
'text' => 'Karşılaştır',
|
||||
'compare_similar_items' => 'Benzer Ürünleri Karşılaştır',
|
||||
'added' => 'Ürün karşılaştırma listesine başarıyla eklendi.',
|
||||
'already_added' => 'Ürün zaten karşılaştırma listesinde yer alıyor.',
|
||||
'removed' => 'Ürün karşılaştırma listesinden başarıyla kaldırıldı.',
|
||||
'empty-text' => "Karşılaştırma listenizde henüz ürün bulunmuyor.",
|
||||
'product_image' => 'Ürün Görseli',
|
||||
'actions' => 'Eylemler',
|
||||
],
|
||||
'login-form' => [
|
||||
'sign-up' => 'Üye Ol',
|
||||
'new-customer' => 'Yeni Müşteri',
|
||||
'customer-login' => 'Müşteri Girişi',
|
||||
'registered-user' => 'Kayıtlı Kullanıcı',
|
||||
'your-email-address' => 'Mail Adresiniz',
|
||||
'form-login-text' => 'Hesabınız varsa, mail adresinizle giriş yapınız.',
|
||||
],
|
||||
'signup-form' => [
|
||||
'login' => 'Giriş Yap',
|
||||
'become-user' => 'Kullanıcı Olun',
|
||||
'user-registration' => 'Kullanıcı Kaydı',
|
||||
'form-sginup-text' => 'Eğer mağazamızda yeniyseniz, sizleri üye olarak aramızda görmekten memnuniyet duyarız.',
|
||||
],
|
||||
'forget-password' => [
|
||||
'login' => 'Giriş Yap',
|
||||
'forgot-password' => 'Parolamı Unuttum',
|
||||
'recover-password' => 'Parolamı Yenile',
|
||||
'recover-password-text' => 'Parolanızı unuttuysanız, mail adresinizi girerek yeni parola talebinde bulunun.',
|
||||
]
|
||||
],
|
||||
|
||||
'error' => [
|
||||
'go-to-home' => 'Ana Sayfaya Git',
|
||||
'page-lost-short' => 'Sayfa içeriği kayboldu',
|
||||
'something_went_wrong' => 'bir şeyler ters gitti',
|
||||
'page-lost-description' => "Ulaşmaya çalıştığınız sayfa bulunamıyor. Lütfen tekrar arayın ya da Geri Dön butonuna tıklayınız.",
|
||||
],
|
||||
|
||||
'products' => [
|
||||
'text' => 'Ürünler',
|
||||
'details' => 'Detaylar',
|
||||
'reviews-title' => 'İncelemeler',
|
||||
'reviewed' => 'İncelendi',
|
||||
'review-by' => 'İnceleyen',
|
||||
'quick-view' => 'Ürün Önizleme',
|
||||
'not-available' => 'Stokta Yok',
|
||||
'submit-review' => 'İnceleme Yaz',
|
||||
'ratings' => ':totalRatings Oylama',
|
||||
'reviews-count' => ':totalReviews İnceleme',
|
||||
'customer-rating' => 'Müşteri Oylaması',
|
||||
'more-infomation' => 'Detaylı Bilgi',
|
||||
'view-all-reviews' => 'Tüm İncelemeleri Görüntüle',
|
||||
'write-your-review' => 'İnceleme Yazınız',
|
||||
'short-description' => 'Kısa Açıklamalar',
|
||||
'recently-viewed' => 'En Son Gezdiğiniz Ürünler',
|
||||
'be-first-review' => 'Bu ürüne ilk siz inceleme girin!',
|
||||
],
|
||||
|
||||
'shop' => [
|
||||
'gender' => [
|
||||
'male' => 'Erkek',
|
||||
'other' => 'Diğer',
|
||||
'female' => 'Kadın',
|
||||
],
|
||||
'general' => [
|
||||
'no' => 'Hayır',
|
||||
'yes' => 'Evet',
|
||||
'view' => 'Görüntüle',
|
||||
'filter' => 'Filtrele',
|
||||
'orders' => 'Siparişler',
|
||||
'update' => 'Güncelle',
|
||||
'reviews' => 'İncelemeler',
|
||||
'addresses' => 'Adresler',
|
||||
'top-brands' => 'Öncü Markalar',
|
||||
'new-password' => 'Yeni Parola',
|
||||
'downloadables' => 'İndirilebilir Ürünler',
|
||||
'confirm-new-password' => 'Parola Doğrula',
|
||||
'enter-current-password' => 'Mevcut Parolanızı Girin',
|
||||
|
||||
'alert' => [
|
||||
'info' => 'Bilgi',
|
||||
'error' => 'Hata',
|
||||
'success' => 'Başarılı',
|
||||
'warning' => 'Uyarı',
|
||||
],
|
||||
],
|
||||
'wishlist' => [
|
||||
'add-wishlist-text' => 'Ürünü dilek listenize ekleyin',
|
||||
'remove-wishlist-text' => 'Ürünü dilek listenizden kaldırın'
|
||||
]
|
||||
],
|
||||
|
||||
'responsive' => [
|
||||
'header' => [
|
||||
'done' => 'Tamamlandı',
|
||||
'languages' => 'Diller',
|
||||
'greeting' => 'Hoşgeldiniz, :customer !',
|
||||
]
|
||||
],
|
||||
]
|
||||
|
||||
?>
|
||||
|
|
@ -0,0 +1,99 @@
|
|||
<?php
|
||||
|
||||
namespace Tests\Unit\CartRule;
|
||||
|
||||
use Codeception\Example;
|
||||
use UnitTester;
|
||||
use Webkul\Rule\Helpers\Validator;
|
||||
|
||||
class ValidatorCest
|
||||
{
|
||||
/**
|
||||
* @param UnitTester $I
|
||||
* @param Example $scenario
|
||||
*
|
||||
* @dataProvider getScenariosForTestValidateArrayValues
|
||||
*/
|
||||
public function testValidateArrayValues(UnitTester $I, Example $scenario): void
|
||||
{
|
||||
$result = $I->executeFunction(Validator::class, 'validateArrayValues', [
|
||||
'attributeValue' => $scenario['inputArray'],
|
||||
'conditionValue' => $scenario['conditionValue']
|
||||
]);
|
||||
|
||||
$I->assertEquals($scenario['expectResult'], $result);
|
||||
}
|
||||
|
||||
protected function getScenariosForTestValidateArrayValues(): array
|
||||
{
|
||||
return [
|
||||
[
|
||||
'inputArray' => [],
|
||||
'conditionValue' => '',
|
||||
'expectResult' => false,
|
||||
],
|
||||
[
|
||||
'inputArray' => ['firstDimension' => 'firstValue'],
|
||||
'conditionValue' => 'anotherValue',
|
||||
'expectResult' => false,
|
||||
],
|
||||
[
|
||||
'inputArray' => ['firstDimension' => 'firstValue'],
|
||||
'conditionValue' => 'firstValue',
|
||||
'expectResult' => true,
|
||||
],
|
||||
[
|
||||
'inputArray' => [
|
||||
'firstDimension' => 'firstValue',
|
||||
'secondDimension' => [
|
||||
'secondKey' => 'secondValue'
|
||||
]
|
||||
],
|
||||
'conditionValue' => 'anotherValue',
|
||||
'expectResult' => false,
|
||||
],
|
||||
[
|
||||
'inputArray' => [
|
||||
'firstDimension' => 'firstValue',
|
||||
'secondDimension' => [
|
||||
'secondKey' => 'secondValue'
|
||||
]
|
||||
],
|
||||
'conditionValue' => 'secondValue',
|
||||
'expectResult' => true,
|
||||
],
|
||||
[
|
||||
'inputArray' => [
|
||||
'firstDimension' => 'firstValue',
|
||||
'secondDimension' => [
|
||||
'secondKey' => 'secondValue',
|
||||
'thirdDimension' => [
|
||||
'thirdKey' => 'thirdValue'
|
||||
]
|
||||
]
|
||||
],
|
||||
'conditionValue' => 'thirdValue',
|
||||
'expectResult' => true,
|
||||
],
|
||||
[
|
||||
'inputArray' => [
|
||||
'firstDimension' => 'firstValue',
|
||||
'secondDimension' => [
|
||||
'secondKey' => 'secondValue',
|
||||
'thirdDimension' => [
|
||||
'thirdKey' => 'thirdValue'
|
||||
]
|
||||
],
|
||||
'secondDimension2' => [
|
||||
'secondKey2' => 'secondValue2',
|
||||
'thirdDimension2' => [
|
||||
'thirdKey2' => 'thirdValue2'
|
||||
]
|
||||
]
|
||||
],
|
||||
'conditionValue' => 'thirdValue2',
|
||||
'expectResult' => true,
|
||||
],
|
||||
];
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue