create get Neighborhood Detail and get District Detail Function for Twig

This commit is contained in:
vedatakd 2019-12-09 17:50:48 +03:00
parent 80704ca32b
commit a6b149ade0
4 changed files with 121 additions and 11 deletions

View File

@ -0,0 +1,34 @@
<?php namespace Visiosoft\LocationModule\District\Command;
use Visiosoft\LocationModule\District\DistrictModel;
class GetDistrict
{
/**
* @var $id
*/
protected $id;
/**
* GetProduct constructor.
* @param $id
*/
public function __construct($id)
{
$this->id = $id;
}
/**
* @param DistrictModel $groups
* @return |null
*/
public function handle(DistrictModel $groups)
{
if ($this->id) {
return $groups->find($this->id);
}
return null;
}
}

View File

@ -0,0 +1,40 @@
<?php namespace Visiosoft\LocationModule;
use Anomaly\Streams\Platform\Addon\Plugin\Plugin;
use Visiosoft\LocationModule\District\Command\GetDistrict;
use Visiosoft\LocationModule\Neighborhood\Command\GetNeighborhood;
class LocationModulePlugin extends Plugin
{
/**
* @return array
*/
public function getFunctions()
{
return [
new \Twig_SimpleFunction(
'getDistrict',
function ($id) {
if (!$ad = $this->dispatch(new GetDistrict($id))) {
return null;
}
return $ad;
}
),
new \Twig_SimpleFunction(
'getNeighborhood',
function ($id) {
if (!$ad = $this->dispatch(new GetNeighborhood($id))) {
return null;
}
return $ad;
}
),
];
}
}

View File

@ -17,7 +17,9 @@ class LocationModuleServiceProvider extends AddonServiceProvider
*
* @type array|null
*/
protected $plugins = [];
protected $plugins = [
LocationModulePlugin::class
];
/**
* The addon Artisan commands.
@ -46,20 +48,20 @@ class LocationModuleServiceProvider extends AddonServiceProvider
* @type array|null
*/
protected $routes = [
'admin/location/village' => 'Visiosoft\LocationModule\Http\Controller\Admin\VillageController@index',
'admin/location/village/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\VillageController@create',
'admin/location/village' => 'Visiosoft\LocationModule\Http\Controller\Admin\VillageController@index',
'admin/location/village/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\VillageController@create',
'admin/location/village/edit/{id}' => 'Visiosoft\LocationModule\Http\Controller\Admin\VillageController@edit',
'admin/location/' => 'Visiosoft\LocationModule\Http\Controller\Admin\CountriesController@index',
'admin/location/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\CountriesController@create',
'admin/location/' => 'Visiosoft\LocationModule\Http\Controller\Admin\CountriesController@index',
'admin/location/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\CountriesController@create',
'admin/location/edit/{id}' => 'Visiosoft\LocationModule\Http\Controller\Admin\CountriesController@edit',
'admin/location/cities' => 'Visiosoft\LocationModule\Http\Controller\Admin\CitiesController@index',
'admin/location/cities/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\CitiesController@create',
'admin/location/cities' => 'Visiosoft\LocationModule\Http\Controller\Admin\CitiesController@index',
'admin/location/cities/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\CitiesController@create',
'admin/location/cities/edit/{id}' => 'Visiosoft\LocationModule\Http\Controller\Admin\CitiesController@edit',
'admin/location/districts' => 'Visiosoft\LocationModule\Http\Controller\Admin\DistrictsController@index',
'admin/location/districts/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\DistrictsController@create',
'admin/location/districts' => 'Visiosoft\LocationModule\Http\Controller\Admin\DistrictsController@index',
'admin/location/districts/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\DistrictsController@create',
'admin/location/districts/edit/{id}' => 'Visiosoft\LocationModule\Http\Controller\Admin\DistrictsController@edit',
'admin/location/neighborhoods' => 'Visiosoft\LocationModule\Http\Controller\Admin\NeighborhoodsController@index',
'admin/location/neighborhoods/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\NeighborhoodsController@create',
'admin/location/neighborhoods' => 'Visiosoft\LocationModule\Http\Controller\Admin\NeighborhoodsController@index',
'admin/location/neighborhoods/create' => 'Visiosoft\LocationModule\Http\Controller\Admin\NeighborhoodsController@create',
'admin/location/neighborhoods/edit/{id}' => 'Visiosoft\LocationModule\Http\Controller\Admin\NeighborhoodsController@edit',
];

View File

@ -0,0 +1,34 @@
<?php namespace Visiosoft\LocationModule\Neighborhood\Command;
use Visiosoft\LocationModule\Neighborhood\NeighborhoodModel;
class GetNeighborhood
{
/**
* @var $id
*/
protected $id;
/**
* GetProduct constructor.
* @param $id
*/
public function __construct($id)
{
$this->id = $id;
}
/**
* @param NeighborhoodModel $groups
* @return |null
*/
public function handle(NeighborhoodModel $groups)
{
if ($this->id) {
return $groups->find($this->id);
}
return null;
}
}