Merge pull request #595 from rahulshukla-webkul/development

Development
This commit is contained in:
JItendra Singh 2019-02-19 13:03:50 +05:30 committed by GitHub
commit 513626cbe3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
191 changed files with 1266 additions and 285 deletions

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Attribute\Contracts;
interface Attribute
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Attribute\Contracts;
interface AttributeFamily
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Attribute\Contracts;
interface AttributeGroup
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Attribute\Contracts;
interface AttributeOption
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Attribute\Contracts;
interface AttributeOptionTranslation
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Attribute\Contracts;
interface AttributeTranslation
{
}

View File

@ -5,8 +5,9 @@ namespace Webkul\Attribute\Models;
use Webkul\Core\Eloquent\TranslatableModel;
use Webkul\Attribute\Models\AttributeOption;
use Webkul\Attribute\Models\AttributeGroup;
use Webkul\Attribute\Contracts\Attribute as AttributeContract;
class Attribute extends TranslatableModel
class Attribute extends TranslatableModel implements AttributeContract
{
public $translatedAttributes = ['name'];
@ -19,7 +20,7 @@ class Attribute extends TranslatableModel
*/
public function options()
{
return $this->hasMany(AttributeOption::class);
return $this->hasMany(AttributeOptionProxy::modelClass());
}
/**

View File

@ -3,13 +3,13 @@
namespace Webkul\Attribute\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Attribute\Models\AttributeGroup;
use Webkul\Product\Models\Product;
use Webkul\Product\Models\ProductProxy;
use Webkul\Attribute\Contracts\AttributeFamily as AttributeFamilyContract;
class AttributeFamily extends Model
class AttributeFamily extends Model implements AttributeFamilyContract
{
public $timestamps = false;
protected $fillable = ['code', 'name'];
/**
@ -17,7 +17,7 @@ class AttributeFamily extends Model
*/
public function custom_attributes()
{
return Attribute::join('attribute_group_mappings', 'attributes.id', '=', 'attribute_group_mappings.attribute_id')
return (AttributeProxy::modelClass())::join('attribute_group_mappings', 'attributes.id', '=', 'attribute_group_mappings.attribute_id')
->join('attribute_groups', 'attribute_group_mappings.attribute_group_id', '=', 'attribute_groups.id')
->join('attribute_families', 'attribute_groups.attribute_family_id', '=', 'attribute_families.id')
->where('attribute_families.id', $this->id)
@ -37,7 +37,7 @@ class AttributeFamily extends Model
*/
public function attribute_groups()
{
return $this->hasMany(AttributeGroup::class)->orderBy('position');
return $this->hasMany(AttributeGroupProxy::modelClass())->orderBy('position');
}
/**
@ -53,6 +53,6 @@ class AttributeFamily extends Model
*/
public function products()
{
return $this->hasMany(Product::class);
return $this->hasMany(ProductProxy::modelClass());
}
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Attribute\Models;
use Konekt\Concord\Proxies\ModelProxy;
class AttributeFamilyProxy extends ModelProxy
{
}

View File

@ -4,11 +4,12 @@ namespace Webkul\Attribute\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Attribute\Models\Attribute;
use Webkul\Attribute\Contracts\AttributeGroup as AttributeGroupContract;
class AttributeGroup extends Model
class AttributeGroup extends Model implements AttributeGroupContract
{
public $timestamps = false;
protected $fillable = ['name', 'position', 'is_user_defined'];
/**
@ -16,7 +17,7 @@ class AttributeGroup extends Model
*/
public function custom_attributes()
{
return $this->belongsToMany(Attribute::class, 'attribute_group_mappings')
return $this->belongsToMany(AttributeProxy::modelClass(), 'attribute_group_mappings')
->withPivot('position')
->orderBy('pivot_position', 'asc');
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Attribute\Models;
use Konekt\Concord\Proxies\ModelProxy;
class AttributeGroupProxy extends ModelProxy
{
}

View File

@ -5,8 +5,9 @@ namespace Webkul\Attribute\Models;
use Webkul\Core\Eloquent\TranslatableModel;
use Dimsav\Translatable\Translatable;
use Webkul\Attribute\Models\Attribute;
use Webkul\Attribute\Contracts\AttributeOption as AttributeOptionContract;
class AttributeOption extends TranslatableModel
class AttributeOption extends TranslatableModel implements AttributeOptionContract
{
public $timestamps = false;

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Attribute\Models;
use Konekt\Concord\Proxies\ModelProxy;
class AttributeOptionProxy extends ModelProxy
{
}

View File

@ -3,8 +3,9 @@
namespace Webkul\Attribute\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Attribute\Contracts\AttributeOptionTranslation as AttributeOptionTranslationContract;
class AttributeOptionTranslation extends Model
class AttributeOptionTranslation extends Model implements AttributeOptionTranslationContract
{
public $timestamps = false;

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Attribute\Models;
use Konekt\Concord\Proxies\ModelProxy;
class AttributeOptionTranslationProxy extends ModelProxy
{
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Attribute\Models;
use Konekt\Concord\Proxies\ModelProxy;
class AttributeProxy extends ModelProxy
{
}

View File

@ -3,10 +3,11 @@
namespace Webkul\Attribute\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Attribute\Contracts\AttributeTranslation as AttributeTranslationContract;
class AttributeTranslation extends Model
class AttributeTranslation extends Model implements AttributeTranslationContract
{
public $timestamps = false;
protected $fillable = ['name'];
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Attribute\Models;
use Konekt\Concord\Proxies\ModelProxy;
class AttributeTranslationProxy extends ModelProxy
{
}

View File

@ -15,6 +15,8 @@ class AttributeServiceProvider extends ServiceProvider
public function boot(Router $router)
{
$this->loadMigrationsFrom(__DIR__ . '/../Database/Migrations');
$this->app->register(ModuleServiceProvider::class);
}
/**

View File

@ -0,0 +1,17 @@
<?php
namespace Webkul\Attribute\Providers;
use Konekt\Concord\BaseModuleServiceProvider;
class ModuleServiceProvider extends BaseModuleServiceProvider
{
protected $models = [
\Webkul\Attribute\Models\Attribute::class,
\Webkul\Attribute\Models\AttributeFamily::class,
\Webkul\Attribute\Models\AttributeGroup::class,
\Webkul\Attribute\Models\AttributeOption::class,
\Webkul\Attribute\Models\AttributeOptionTranslation::class,
\Webkul\Attribute\Models\AttributeTranslation::class,
];
}

View File

@ -53,7 +53,7 @@ class AttributeFamilyRepository extends Repository
*/
function model()
{
return 'Webkul\Attribute\Models\AttributeFamily';
return 'Webkul\Attribute\Contracts\AttributeFamily';
}
/**
@ -79,7 +79,7 @@ class AttributeFamilyRepository extends Repository
} else {
$attributeModel = $this->attribute->findOneByField('code', $attribute['code']);
}
$attributeGroup->custom_attributes()->save($attributeModel, ['position' => $key + 1]);
}
}

View File

@ -1,7 +1,7 @@
<?php
<?php
namespace Webkul\Attribute\Repositories;
use Webkul\Core\Eloquent\Repository;
/**
@ -12,7 +12,7 @@ use Webkul\Core\Eloquent\Repository;
*/
class AttributeGroupRepository extends Repository
{
/**
* Specify Model class name
*
@ -20,6 +20,6 @@ class AttributeGroupRepository extends Repository
*/
function model()
{
return 'Webkul\Attribute\Models\AttributeGroup';
return 'Webkul\Attribute\Contracts\AttributeGroup';
}
}

View File

@ -1,7 +1,7 @@
<?php
<?php
namespace Webkul\Attribute\Repositories;
use Webkul\Core\Eloquent\Repository;
/**
@ -12,7 +12,7 @@ use Webkul\Core\Eloquent\Repository;
*/
class AttributeOptionRepository extends Repository
{
/**
* Specify Model class name
*
@ -20,6 +20,6 @@ class AttributeOptionRepository extends Repository
*/
function model()
{
return 'Webkul\Attribute\Models\AttributeOption';
return 'Webkul\Attribute\Contracts\AttributeOption';
}
}

View File

@ -1,7 +1,7 @@
<?php
<?php
namespace Webkul\Attribute\Repositories;
use Webkul\Core\Eloquent\Repository;
use Illuminate\Support\Facades\Event;
use Webkul\Attribute\Repositories\AttributeOptionRepository;
@ -42,7 +42,7 @@ class AttributeRepository extends Repository
*/
function model()
{
return 'Webkul\Attribute\Models\Attribute';
return 'Webkul\Attribute\Contracts\Attribute';
}
/**
@ -170,7 +170,7 @@ class AttributeRepository extends Repository
'special_price_to',
'status'
], $attributeColumns);
if (in_array('*', $codes))
return $this->all($attributeColumns);

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Category\Contracts;
interface Category
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Category\Contracts;
interface CategoryTranslation
{
}

View File

@ -5,8 +5,9 @@ namespace Webkul\Category\Models;
use Webkul\Core\Eloquent\TranslatableModel;
use Kalnoy\Nestedset\NodeTrait;
use Illuminate\Support\Facades\Storage;
use Webkul\Category\Contracts\Category as CategoryContract;
class Category extends TranslatableModel
class Category extends TranslatableModel implements CategoryContract
{
use NodeTrait;

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Category\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CategoryProxy extends ModelProxy
{
}

View File

@ -3,10 +3,11 @@
namespace Webkul\Category\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Category\Contracts\CategoryTranslation as CategoryTranslationContract;
class CategoryTranslation extends Model
class CategoryTranslation extends Model implements CategoryTranslationContract
{
public $timestamps = false;
protected $fillable = ['name', 'description', 'slug', 'meta_title', 'meta_description', 'meta_keywords'];
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Category\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CategoryTranslationProxy extends ModelProxy
{
}

View File

@ -16,6 +16,8 @@ class CategoryServiceProvider extends ServiceProvider
public function boot(Router $router)
{
$this->loadMigrationsFrom(__DIR__ . '/../Database/Migrations');
$this->app->register(ModuleServiceProvider::class);
}
/**

View File

@ -0,0 +1,13 @@
<?php
namespace Webkul\Category\Providers;
use Konekt\Concord\BaseModuleServiceProvider;
class ModuleServiceProvider extends BaseModuleServiceProvider
{
protected $models = [
\Webkul\Category\Models\Category::class,
\Webkul\Category\Models\CategoryTranslation::class,
];
}

View File

@ -35,7 +35,7 @@ class CategoryRepository extends Repository
*/
public function model()
{
return 'Webkul\Category\Models\Category';
return 'Webkul\Category\Contracts\Category';
}
/**

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Checkout\Contracts;
interface Cart
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Checkout\Contracts;
interface CartAddress
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Checkout\Contracts;
interface CartItem
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Checkout\Contracts;
interface CartPayment
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Checkout\Contracts;
interface CartShippingRate
{
}

View File

@ -3,13 +3,10 @@
namespace Webkul\Checkout\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Product\Models\Product;
use Webkul\Checkout\Models\CartItem;
use Webkul\Checkout\Models\CartAddress;
use Webkul\Checkout\Models\CartPayment;
use Webkul\Checkout\Models\CartShippingRate;
use Webkul\Product\Models\ProductProxy;
use Webkul\Checkout\Contracts\Cart as CartContract;
class Cart extends Model
class Cart extends Model implements CartContract
{
protected $table = 'cart';
@ -23,14 +20,14 @@ class Cart extends Model
* To get relevant associated items with the cart instance
*/
public function items() {
return $this->hasMany(CartItem::class)->whereNull('parent_id');
return $this->hasMany(CartItemProxy::modelClass())->whereNull('parent_id');
}
/**
* To get all the associated items with the cart instance even the parent and child items of configurable products
*/
public function all_items() {
return $this->hasMany(CartItem::class);
return $this->hasMany(CartItemProxy::modelClass());
}
/**
@ -38,7 +35,7 @@ class Cart extends Model
*/
public function addresses()
{
return $this->hasMany(CartAddress::class);
return $this->hasMany(CartAddressProxy::modelClass());
}
/**
@ -78,7 +75,7 @@ class Cart extends Model
*/
public function shipping_rates()
{
return $this->hasManyThrough(CartShippingRate::class, CartAddress::class, 'cart_id', 'cart_address_id');
return $this->hasManyThrough(CartShippingRateProxy::modelClass(), CartAddressProxy::modelClass(), 'cart_id', 'cart_address_id');
}
/**
@ -102,6 +99,6 @@ class Cart extends Model
*/
public function payment()
{
return $this->hasOne(CartPayment::class);
return $this->hasOne(CartPaymentProxy::modelClass());
}
}

View File

@ -3,9 +3,9 @@
namespace Webkul\Checkout\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Checkout\Models\CartShippingRate;
use Webkul\Checkout\Contracts\CartAddress as CartAddressContract;
class CartAddress extends Model
class CartAddress extends Model implements CartAddressContract
{
protected $table = 'cart_address';
@ -16,7 +16,7 @@ class CartAddress extends Model
*/
public function shipping_rates()
{
return $this->hasMany(CartShippingRate::class);
return $this->hasMany(CartShippingRateProxy::modelClass());
}
/**

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Checkout\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CartAddressProxy extends ModelProxy
{
}

View File

@ -3,10 +3,11 @@
namespace Webkul\Checkout\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Product\Models\Product;
use Webkul\Product\Models\ProductProxy;
use Webkul\Checkout\Contracts\CartItem as CartItemContract;
class CartItem extends Model
class CartItem extends Model implements CartItemContract
{
protected $table = 'cart_items';
@ -18,12 +19,12 @@ class CartItem extends Model
public function product()
{
return $this->hasOne(Product::class, 'id', 'product_id');
return $this->hasOne(ProductProxy::modelClass(), 'id', 'product_id');
}
public function cart()
{
return $this->hasOne(Cart::class, 'id', 'cart_id');
return $this->hasOne(CartProxy::modelClass(), 'id', 'cart_id');
}
/**

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Checkout\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CartItemProxy extends ModelProxy
{
}

View File

@ -3,8 +3,9 @@
namespace Webkul\Checkout\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Checkout\Contracts\CartPayment as CartPaymentContract;
class CartPayment extends Model
class CartPayment extends Model implements CartPaymentContract
{
protected $table = 'cart_payment';
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Checkout\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CartPaymentProxy extends ModelProxy
{
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Checkout\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CartProxy extends ModelProxy
{
}

View File

@ -3,15 +3,15 @@
namespace Webkul\Checkout\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Checkout\Models\CartAddress;
use Webkul\Checkout\Contracts\CartShippingRate as CartShippingRateContract;
class CartShippingRate extends Model
class CartShippingRate extends Model implements CartShippingRateContract
{
/**
* Get the post that owns the comment.
*/
public function shipping_address()
{
return $this->belongsTo(CartAddress::class);
return $this->belongsTo(CartAddressProxy::modelClass());
}
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Checkout\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CartShippingRateProxy extends ModelProxy
{
}

View File

@ -18,6 +18,8 @@ class CheckoutServiceProvider extends ServiceProvider
include __DIR__ . '/../Http/helpers.php';
$this->loadMigrationsFrom(__DIR__ . '/../Database/Migrations');
$this->app->register(ModuleServiceProvider::class);
}
/**

View File

@ -0,0 +1,16 @@
<?php
namespace Webkul\Checkout\Providers;
use Konekt\Concord\BaseModuleServiceProvider;
class ModuleServiceProvider extends BaseModuleServiceProvider
{
protected $models = [
\Webkul\Checkout\Models\Cart::class,
\Webkul\Checkout\Models\CartAddress::class,
\Webkul\Checkout\Models\CartItem::class,
\Webkul\Checkout\Models\CartPayment::class,
\Webkul\Checkout\Models\CartShippingRate::class,
];
}

View File

@ -20,6 +20,6 @@ class CartAddressRepository extends Repository
*/
function model()
{
return 'Webkul\Checkout\Models\CartAddress';
return 'Webkul\Checkout\Contracts\CartAddress';
}
}

View File

@ -21,7 +21,7 @@ class CartItemRepository extends Repository
function model()
{
return 'Webkul\Checkout\Models\CartItem';
return 'Webkul\Checkout\Contracts\CartItem';
}
/**

View File

@ -21,7 +21,7 @@ class CartRepository extends Repository
function model()
{
return 'Webkul\Checkout\Models\Cart';
return 'Webkul\Checkout\Contracts\Cart';
}
/**

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface Channel
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface CoreConfig
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface Country
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface CountryState
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface Currency
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface CurrencyExchangeRate
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface Locale
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface Slider
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface SubscribersList
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface TaxCategory
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface TaxMap
{
}

View File

@ -0,0 +1,7 @@
<?php
namespace Webkul\Core\Contracts;
interface TaxRate
{
}

View File

@ -4,12 +4,11 @@ namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Storage;
use Webkul\Core\Models\Locale;
use Webkul\Core\Models\Currency;
use Webkul\Category\Models\Category;
use Webkul\Inventory\Models\InventorySource;
use Webkul\Category\Models\CategoryProxy;
use Webkul\Inventory\Models\InventorySourceProxy;
use Webkul\Core\Contracts\Channel as ChannelContract;
class Channel extends Model
class Channel extends Model implements ChannelContract
{
protected $fillable = ['code', 'name', 'description', 'theme', 'home_page_content', 'footer_content', 'hostname', 'default_locale_id', 'base_currency_id', 'root_category_id'];
@ -18,7 +17,7 @@ class Channel extends Model
*/
public function locales()
{
return $this->belongsToMany(Locale::class, 'channel_locales');
return $this->belongsToMany(LocaleProxy::modelClass(), 'channel_locales');
}
/**
@ -26,7 +25,7 @@ class Channel extends Model
*/
public function default_locale()
{
return $this->belongsTo(Locale::class);
return $this->belongsTo(LocaleProxy::modelClass());
}
/**
@ -34,7 +33,7 @@ class Channel extends Model
*/
public function currencies()
{
return $this->belongsToMany(Currency::class, 'channel_currencies');
return $this->belongsToMany(CurrencyProxy::modelClass(), 'channel_currencies');
}
/**
@ -42,7 +41,7 @@ class Channel extends Model
*/
public function inventory_sources()
{
return $this->belongsToMany(InventorySource::class, 'channel_inventory_sources');
return $this->belongsToMany(InventorySourceProxy::modelClass(), 'channel_inventory_sources');
}
@ -53,7 +52,7 @@ class Channel extends Model
*/
public function base_currency()
{
return $this->belongsTo(Currency::class);
return $this->belongsTo(CurrencyProxy::modelClass());
}
/**
@ -61,7 +60,7 @@ class Channel extends Model
*/
public function root_category()
{
return $this->belongsTo(Category::class, 'root_category_id');
return $this->belongsTo(CategoryProxy::modelClass(), 'root_category_id');
}
/**

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class ChannelProxy extends ModelProxy
{
}

View File

@ -3,8 +3,9 @@
namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Contracts\CoreConfig as CoreConfigContract;
class CoreConfig extends Model
class CoreConfig extends Model implements CoreConfigContract
{
/**
* The attributes that are mass assignable.

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CoreConfigProxy extends ModelProxy
{
}

View File

@ -3,8 +3,9 @@
namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Contracts\Country as CountryContract;
class Country extends Model
class Country extends Model implements CountryContract
{
public $timestamps = false;
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CountryProxy extends ModelProxy
{
}

View File

@ -3,8 +3,10 @@
namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Contracts\CountryState as CountryStateContract;
class CountryState extends Model
class CountryState extends Model implements CountryStateContract
{
public $timestamps = false;
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CountryStateProxy extends ModelProxy
{
}

View File

@ -3,9 +3,9 @@
namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Models\CurrencyExchangeRate;
use Webkul\Core\Contracts\Currency as CurrencyContract;
class Currency extends Model
class Currency extends Model implements CurrencyContract
{
/**
* The attributes that are mass assignable.
@ -21,6 +21,6 @@ class Currency extends Model
*/
public function CurrencyExchangeRate()
{
return $this->hasOne(CurrencyExchangeRate::class, 'target_currency');
return $this->hasOne(CurrencyExchangeRateProxy::modelClass(), 'target_currency');
}
}

View File

@ -3,8 +3,9 @@
namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Contracts\CurrencyExchangeRate as CurrencyExchangeRateContract;
class CurrencyExchangeRate extends Model
class CurrencyExchangeRate extends Model implements CurrencyExchangeRateContract
{
/**
* The attributes that are mass assignable.

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CurrencyExchangeRateProxy extends ModelProxy
{
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class CurrencyProxy extends ModelProxy
{
}

View File

@ -3,8 +3,9 @@
namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Contracts\Locale as LocaleContract;
class Locale extends Model
class Locale extends Model implements LocaleContract
{
/**
* The attributes that are mass assignable.

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class LocaleProxy extends ModelProxy
{
}

View File

@ -3,8 +3,9 @@
namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Contracts\Slider as SliderContract;
class Slider extends Model
class Slider extends Model implements SliderContract
{
/**
* The attributes that are mass assignable.

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class SliderProxy extends ModelProxy
{
}

View File

@ -3,8 +3,9 @@
namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Contracts\SubscribersList as SubscribersListContract;
class SubscribersList extends Model
class SubscribersList extends Model implements SubscribersListContract
{
/**
* The attributes that are mass assignable.

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class SubscribersListProxy extends ModelProxy
{
}

View File

@ -5,8 +5,9 @@ namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Models\TaxRate;
use Webkul\Core\Models\TaxMap;
use Webkul\Core\Contracts\TaxCategory as TaxCategoryContract;
class TaxCategory extends Model
class TaxCategory extends Model implements TaxCategoryContract
{
/**
* The attributes that are mass assignable.
@ -22,6 +23,6 @@ class TaxCategory extends Model
//for joining the two way pivot table
public function tax_rates() {
return $this->belongsToMany(TaxRate::class, 'tax_categories_tax_rates', 'tax_category_id')->withPivot('id');
return $this->belongsToMany(TaxRateProxy::modelClass(), 'tax_categories_tax_rates', 'tax_category_id')->withPivot('id');
}
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class TaxCategoryProxy extends ModelProxy
{
}

View File

@ -5,8 +5,9 @@ namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Models\TaxCategory;
use Webkul\Core\Models\TaxRate;
use Webkul\Core\Contracts\TaxMap as TaxMapContract;
class TaxMap extends Model
class TaxMap extends Model implements TaxMapContract
{
/**
* The attributes that are mass assignable.

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class TaxMapProxy extends ModelProxy
{
}

View File

@ -4,8 +4,9 @@ namespace Webkul\Core\Models;
use Illuminate\Database\Eloquent\Model;
use Webkul\Core\Models\TaxCategory;
use Webkul\Core\Contracts\TaxRate as TaxRateContract;
class TaxRate extends Model
class TaxRate extends Model implements TaxRateContract
{
/**
* The attributes that are mass assignable.
@ -20,6 +21,6 @@ class TaxRate extends Model
];
public function tax_categories() {
return $this->belongsToMany(TaxCategory::class, 'tax_categories_tax_rates', 'tax_rate_id', 'id');
return $this->belongsToMany(TaxCategoryProxy::modelClass(), 'tax_categories_tax_rates', 'tax_rate_id', 'id');
}
}

View File

@ -0,0 +1,10 @@
<?php
namespace Webkul\Core\Models;
use Konekt\Concord\Proxies\ModelProxy;
class TaxRateProxy extends ModelProxy
{
}

View File

@ -25,12 +25,14 @@ class CoreServiceProvider extends ServiceProvider
$this->loadTranslationsFrom(__DIR__ . '/../Resources/lang', 'core');
Validator::extend('slug', 'Webkul\Core\Contracts\Validations\Slug@passes');
Validator::extend('code', 'Webkul\Core\Contracts\Validations\Code@passes');
Validator::extend('decimal', 'Webkul\Core\Contracts\Validations\Decimal@passes');
$this->app->register(ModuleServiceProvider::class);
}
/**
* Register services.
*

View File

@ -0,0 +1,23 @@
<?php
namespace Webkul\Core\Providers;
use Konekt\Concord\BaseModuleServiceProvider;
class ModuleServiceProvider extends BaseModuleServiceProvider
{
protected $models = [
\Webkul\Core\Models\Channel::class,
\Webkul\Core\Models\CoreConfig::class,
\Webkul\Core\Models\Country::class,
\Webkul\Core\Models\CountryState::class,
\Webkul\Core\Models\Currency::class,
\Webkul\Core\Models\CurrencyExchangeRate::class,
\Webkul\Core\Models\Locale::class,
\Webkul\Core\Models\Slider::class,
\Webkul\Core\Models\SubscribersList::class,
\Webkul\Core\Models\TaxCategory::class,
\Webkul\Core\Models\TaxMap::class,
\Webkul\Core\Models\TaxRate::class,
];
}

View File

@ -20,7 +20,7 @@ class ChannelRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\Channel';
return 'Webkul\Core\Contracts\Channel';
}
/**

View File

@ -20,7 +20,7 @@ class CoreConfigRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\CoreConfig';
return 'Webkul\Core\Contracts\CoreConfig';
}
/**

View File

@ -19,6 +19,6 @@ class CountryRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\Country';
return 'Webkul\Core\Contracts\Country';
}
}

View File

@ -19,6 +19,6 @@ class CountryStateRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\CountryState';
return 'Webkul\Core\Contracts\CountryState';
}
}

View File

@ -19,7 +19,7 @@ class CurrencyRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\Currency';
return 'Webkul\Core\Contracts\Currency';
}
public function delete($id) {

View File

@ -1,7 +1,7 @@
<?php
<?php
namespace Webkul\Core\Repositories;
use Webkul\Core\Eloquent\Repository;
/**
@ -19,6 +19,6 @@ class ExchangeRateRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\CurrencyExchangeRate';
return 'Webkul\Core\Contracts\CurrencyExchangeRate';
}
}

View File

@ -1,7 +1,7 @@
<?php
<?php
namespace Webkul\Core\Repositories;
use Webkul\Core\Eloquent\Repository;
/**
@ -19,6 +19,6 @@ class LocaleRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\Locale';
return 'Webkul\Core\Contracts\Locale';
}
}

View File

@ -34,7 +34,7 @@ class SliderRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\Slider';
return 'Webkul\Core\Contracts\Slider';
}
/**

View File

@ -20,7 +20,7 @@ class SubscribersListRepository extends Repository
*/
function model()
{
return 'Webkul\Core\Models\SubscribersList';
return 'Webkul\Core\Contracts\SubscribersList';
}

Some files were not shown because too many files have changed in this diff Show More