Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
laravel-adminpanel
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
laravel-adminpanel
Commits
19448c13
Commit
19448c13
authored
Oct 16, 2017
by
Viral Solani
Committed by
StyleCI Bot
Oct 16, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Apply fixes from StyleCI
parent
dab13cf3
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
247 additions
and
241 deletions
+247
-241
ModuleController.php
app/Http/Controllers/Backend/Module/ModuleController.php
+8
-8
Generator.php
app/Http/Utilities/Generator.php
+236
-230
ModuleRepository.php
app/Repositories/Backend/Module/ModuleRepository.php
+3
-3
No files found.
app/Http/Controllers/Backend/Module/ModuleController.php
View file @
19448c13
...
@@ -2,18 +2,18 @@
...
@@ -2,18 +2,18 @@
namespace
App\Http\Controllers\Backend\Module
;
namespace
App\Http\Controllers\Backend\Module
;
use
Illuminate\Http\Request
;
use
App\Models\Module\Module
;
use
App\Http\Utilities\Generator
;
use
App\Http\Controllers\Controller
;
use
App\Http\Controllers\Controller
;
use
App\Models\Access\Permission\Permission
;
use
App\Repositories\Backend\Module\ModuleRepository
;
use
App\Http\Requests\Backend\Modules\StoreModuleRequest
;
use
App\Http\Requests\Backend\Modules\CreateModuleRequest
;
use
App\Http\Requests\Backend\Modules\CreateModuleRequest
;
use
App\Http\Requests\Backend\Modules\ManageModuleRequest
;
use
App\Http\Requests\Backend\Modules\ManageModuleRequest
;
use
App\Http\Requests\Backend\Modules\StoreModuleRequest
;
use
App\Http\Utilities\Generator
;
use
App\Models\Access\Permission\Permission
;
use
App\Models\Module\Module
;
use
App\Repositories\Backend\Module\ModuleRepository
;
use
Illuminate\Http\Request
;
/**
/**
* Class ModuleController
* Class ModuleController
.
*
*
* @author Vipul Basapati <basapativipulkumar@gmail.com | https://github.com/bvipul>
* @author Vipul Basapati <basapativipulkumar@gmail.com | https://github.com/bvipul>
*/
*/
...
@@ -82,7 +82,7 @@ class ModuleController extends Controller
...
@@ -82,7 +82,7 @@ class ModuleController extends Controller
$this
->
generator
->
createViewFiles
();
$this
->
generator
->
createViewFiles
();
$this
->
generator
->
createEvents
();
$this
->
generator
->
createEvents
();
//Creating the Module
//Creating the Module
$this
->
repository
->
create
(
$request
->
all
(),
$this
->
generator
->
getPermissions
()
);
$this
->
repository
->
create
(
$request
->
all
(),
$this
->
generator
->
getPermissions
()
);
return
redirect
()
->
route
(
'admin.modules.index'
)
->
withFlashSuccess
(
'Module Generated Successfully!'
);
return
redirect
()
->
route
(
'admin.modules.index'
)
->
withFlashSuccess
(
'Module Generated Successfully!'
);
}
}
...
...
app/Http/Utilities/Generator.php
View file @
19448c13
...
@@ -3,28 +3,28 @@
...
@@ -3,28 +3,28 @@
namespace
App\Http\Utilities
;
namespace
App\Http\Utilities
;
use
Illuminate\Filesystem\Filesystem
;
use
Illuminate\Filesystem\Filesystem
;
use
Illuminate\Support\Facades\Schema
;
use
Illuminate\Support\Facades\Artisan
;
use
Illuminate\Support\Facades\Artisan
;
use
Illuminate\Support\Facades\Schema
;
/**
/**
* Class Generator
* Class Generator
.
*
*
* @author Vipul Basapati <basapativipulkumar@gmail.com | https://github.com/bvipul>
* @author Vipul Basapati <basapativipulkumar@gmail.com | https://github.com/bvipul>
*/
*/
class
Generator
class
Generator
{
{
/**
/**
* Module Name
* Module Name
.
*/
*/
protected
$module
;
protected
$module
;
/**
/**
* Files Object
* Files Object
.
*/
*/
protected
$files
;
protected
$files
;
/**
/**
* Directory Name
* Directory Name
.
*/
*/
protected
$directory
;
protected
$directory
;
...
@@ -38,7 +38,7 @@ class Generator
...
@@ -38,7 +38,7 @@ class Generator
* 4. Attribute Namespace
* 4. Attribute Namespace
* 5. Relationship Namespace
* 5. Relationship Namespace
* 6. Traits directory
* 6. Traits directory
* 7. Model Namespace
* 7. Model Namespace
.
*/
*/
protected
$model
;
protected
$model
;
protected
$attribute
;
protected
$attribute
;
...
@@ -53,7 +53,7 @@ class Generator
...
@@ -53,7 +53,7 @@ class Generator
* 1. Controlller Name
* 1. Controlller Name
* 2. Table Controller Name
* 2. Table Controller Name
* 3. Controller Namespace
* 3. Controller Namespace
* 4. Table Controller Namespace
* 4. Table Controller Namespace
.
*/
*/
protected
$controller
;
protected
$controller
;
protected
$table_controller
;
protected
$table_controller
;
...
@@ -74,7 +74,7 @@ class Generator
...
@@ -74,7 +74,7 @@ class Generator
* 10. Create Request Namespace
* 10. Create Request Namespace
* 11. Update Request Namespace
* 11. Update Request Namespace
* 12. Delete Request Namespace
* 12. Delete Request Namespace
* 13. Request Namespace
* 13. Request Namespace
.
*/
*/
protected
$edit_request
;
protected
$edit_request
;
protected
$store_request
;
protected
$store_request
;
...
@@ -97,7 +97,7 @@ class Generator
...
@@ -97,7 +97,7 @@ class Generator
* 3. Manage Permission
* 3. Manage Permission
* 4. Create Permission
* 4. Create Permission
* 5. Update Permission
* 5. Update Permission
* 6. Delete Permission
* 6. Delete Permission
.
*/
*/
protected
$edit_permission
;
protected
$edit_permission
;
protected
$store_permission
;
protected
$store_permission
;
...
@@ -109,34 +109,35 @@ class Generator
...
@@ -109,34 +109,35 @@ class Generator
/**
/**
* Repository
* Repository
* 1. Repository Name
* 1. Repository Name
* 2. Repository Namespace
* 2. Repository Namespace
.
*/
*/
protected
$repository
;
protected
$repository
;
protected
$repo_namespace
=
'App\\Repositories\\Backend\\'
;
protected
$repo_namespace
=
'App\\Repositories\\Backend\\'
;
/**
/**
* Table Name
* Table Name
.
*/
*/
protected
$table
;
protected
$table
;
/**
/**
* Events
* Events.
*
* @var array
* @var array
*/
*/
protected
$events
=
[];
protected
$events
=
[];
/**
/**
* Route Path
* Route Path
.
*/
*/
protected
$route_path
=
'routes\\Backend\\'
;
protected
$route_path
=
'routes\\Backend\\'
;
/**
/**
* View Path
* View Path
.
*/
*/
protected
$view_path
=
'resources\\views\\backend\\'
;
protected
$view_path
=
'resources\\views\\backend\\'
;
/**
/**
* Event Namespace
* Event Namespace
.
*/
*/
protected
$event_namespace
=
'Backend\\'
;
protected
$event_namespace
=
'Backend\\'
;
...
@@ -145,67 +146,68 @@ class Generator
...
@@ -145,67 +146,68 @@ class Generator
*/
*/
public
function
__construct
()
public
function
__construct
()
{
{
$this
->
files
=
new
Filesystem
;
$this
->
files
=
new
Filesystem
()
;
}
}
/**
/**
* Initialization
* Initialization.
*
* @param array $input
* @param array $input
*/
*/
public
function
initialize
(
$input
)
public
function
initialize
(
$input
)
{
{
//Module
//Module
$this
->
module
=
title_case
(
$input
[
'name'
]
);
$this
->
module
=
title_case
(
$input
[
'name'
]
);
//Directory
//Directory
$this
->
directory
=
str_singular
(
title_case
(
$input
[
'directory_name'
]
)
);
$this
->
directory
=
str_singular
(
title_case
(
$input
[
'directory_name'
])
);
//Model
//Model
$this
->
model
=
str_singular
(
title_case
(
$input
[
'model_name'
]
)
);
$this
->
model
=
str_singular
(
title_case
(
$input
[
'model_name'
])
);
//Table
//Table
$this
->
table
=
str_plural
(
strtolower
(
$input
[
'table_name'
]
)
);
$this
->
table
=
str_plural
(
strtolower
(
$input
[
'table_name'
])
);
//Controller
//Controller
$this
->
controller
=
str_plural
(
$this
->
model
)
.
"Controller"
;
$this
->
controller
=
str_plural
(
$this
->
model
)
.
'Controller'
;
//Table Controller
//Table Controller
$this
->
table_controller
=
str_plural
(
$this
->
model
)
.
"TableController"
;
$this
->
table_controller
=
str_plural
(
$this
->
model
)
.
'TableController'
;
//Attributes
//Attributes
$this
->
attribute
=
$this
->
model
.
"Attribute"
;
$this
->
attribute
=
$this
->
model
.
'Attribute'
;
$this
->
attribute_namespace
=
$this
->
model_namespace
;
$this
->
attribute_namespace
=
$this
->
model_namespace
;
//Relationship
//Relationship
$this
->
relationship
=
$this
->
model
.
"Relationship"
;
$this
->
relationship
=
$this
->
model
.
'Relationship'
;
$this
->
relationship_namespace
=
$this
->
model_namespace
;
$this
->
relationship_namespace
=
$this
->
model_namespace
;
//Repository
//Repository
$this
->
repository
=
$this
->
model
.
"Repository"
;
$this
->
repository
=
$this
->
model
.
'Repository'
;
//Requests
//Requests
$this
->
edit_request
=
"Edit"
.
$this
->
model
.
"Request"
;
$this
->
edit_request
=
'Edit'
.
$this
->
model
.
'Request'
;
$this
->
store_request
=
"Store"
.
$this
->
model
.
"Request"
;
$this
->
store_request
=
'Store'
.
$this
->
model
.
'Request'
;
$this
->
create_request
=
"Create"
.
$this
->
model
.
"Request"
;
$this
->
create_request
=
'Create'
.
$this
->
model
.
'Request'
;
$this
->
update_request
=
"Update"
.
$this
->
model
.
"Request"
;
$this
->
update_request
=
'Update'
.
$this
->
model
.
'Request'
;
$this
->
delete_request
=
"Delete"
.
$this
->
model
.
"Request"
;
$this
->
delete_request
=
'Delete'
.
$this
->
model
.
'Request'
;
$this
->
manage_request
=
"Manage"
.
$this
->
model
.
"Request"
;
$this
->
manage_request
=
'Manage'
.
$this
->
model
.
'Request'
;
//CRUD Options
//CRUD Options
$this
->
edit
=
!
empty
(
$input
[
'model_edit'
]
)
?
true
:
false
;
$this
->
edit
=
!
empty
(
$input
[
'model_edit'
]
)
?
true
:
false
;
$this
->
create
=
!
empty
(
$input
[
'model_create'
]
)
?
true
:
false
;
$this
->
create
=
!
empty
(
$input
[
'model_create'
]
)
?
true
:
false
;
$this
->
delete
=
!
empty
(
$input
[
'model_delete'
]
)
?
true
:
false
;
$this
->
delete
=
!
empty
(
$input
[
'model_delete'
]
)
?
true
:
false
;
//Permissions
//Permissions
$this
->
edit_permission
=
"edit-"
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
edit_permission
=
'edit-'
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
store_permission
=
"store-"
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
store_permission
=
'store-'
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
manage_permission
=
"manage-"
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
manage_permission
=
'manage-'
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
create_permission
=
"create-"
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
create_permission
=
'create-'
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
update_permission
=
"update-"
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
update_permission
=
'update-'
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
delete_permission
=
"delete-"
.
strtolower
(
str_singular
(
$this
->
model
)
);
$this
->
delete_permission
=
'delete-'
.
strtolower
(
str_singular
(
$this
->
model
)
);
//Events
//Events
$this
->
events
=
array_filter
(
$input
[
'event'
]
);
$this
->
events
=
array_filter
(
$input
[
'event'
]
);
//Generate Namespaces
//Generate Namespaces
$this
->
createNamespacesAndValues
();
$this
->
createNamespacesAndValues
();
...
@@ -217,33 +219,33 @@ class Generator
...
@@ -217,33 +219,33 @@ class Generator
private
function
createNamespacesAndValues
()
private
function
createNamespacesAndValues
()
{
{
//Model Namespace
//Model Namespace
$this
->
model_namespace
.=
$this
->
getFullNamespace
(
$this
->
model
);
$this
->
model_namespace
.=
$this
->
getFullNamespace
(
$this
->
model
);
//Controller Namespace
//Controller Namespace
$this
->
controller_namespace
.=
$this
->
getFullNamespace
(
$this
->
controller
);
$this
->
controller_namespace
.=
$this
->
getFullNamespace
(
$this
->
controller
);
//Table Controller Namespace
//Table Controller Namespace
$this
->
table_controller_namespace
.=
$this
->
getFullNamespace
(
$this
->
table_controller
);
$this
->
table_controller_namespace
.=
$this
->
getFullNamespace
(
$this
->
table_controller
);
//Attribute Namespace
//Attribute Namespace
$this
->
attribute_namespace
.=
$this
->
getFullNamespace
(
$this
->
attribute
,
$this
->
trait_directory
);
$this
->
attribute_namespace
.=
$this
->
getFullNamespace
(
$this
->
attribute
,
$this
->
trait_directory
);
//Relationship Namespace
//Relationship Namespace
$this
->
relationship_namespace
.=
$this
->
getFullNamespace
(
$this
->
relationship
,
$this
->
trait_directory
);
$this
->
relationship_namespace
.=
$this
->
getFullNamespace
(
$this
->
relationship
,
$this
->
trait_directory
);
//View Path
//View Path
$this
->
view_path
.=
$this
->
getFullNamespace
(
''
);
$this
->
view_path
.=
$this
->
getFullNamespace
(
''
);
//Requests
//Requests
$this
->
edit_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
edit_request
);
$this
->
edit_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
edit_request
);
$this
->
store_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
store_request
);
$this
->
store_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
store_request
);
$this
->
manage_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
manage_request
);
$this
->
manage_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
manage_request
);
$this
->
create_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
create_request
);
$this
->
create_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
create_request
);
$this
->
update_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
update_request
);
$this
->
update_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
update_request
);
$this
->
delete_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
delete_request
);
$this
->
delete_request_namespace
=
$this
->
request_namespace
.
$this
->
getFullNamespace
(
$this
->
delete_request
);
//Repository Namespace
//Repository Namespace
$this
->
repo_namespace
.=
$this
->
getFullNamespace
(
$this
->
repository
);
$this
->
repo_namespace
.=
$this
->
getFullNamespace
(
$this
->
repository
);
//Events Namespace
//Events Namespace
$this
->
event_namespace
.=
$this
->
getFullNamespace
(
''
);
$this
->
event_namespace
.=
$this
->
getFullNamespace
(
''
);
...
@@ -298,22 +300,23 @@ class Generator
...
@@ -298,22 +300,23 @@ class Generator
}
}
/**
/**
* Return the permissions used in the module
* Return the permissions used in the module.
*
* @return array
* @return array
*/
*/
public
function
getPermissions
()
public
function
getPermissions
()
{
{
$permissions
=
[];
$permissions
=
[];
if
(
$this
->
create
)
{
if
(
$this
->
create
)
{
$permissions
[]
=
$this
->
create_permission
;
$permissions
[]
=
$this
->
create_permission
;
$permissions
[]
=
$this
->
store_permission
;
$permissions
[]
=
$this
->
store_permission
;
}
}
if
(
$this
->
edit
)
{
if
(
$this
->
edit
)
{
$permissions
[]
=
$this
->
edit_permission
;
$permissions
[]
=
$this
->
edit_permission
;
$permissions
[]
=
$this
->
update_permission
;
$permissions
[]
=
$this
->
update_permission
;
}
}
if
(
$this
->
delete
)
{
if
(
$this
->
delete
)
{
$permissions
[]
=
$this
->
delete_permission
;
$permissions
[]
=
$this
->
delete_permission
;
}
}
...
@@ -323,14 +326,15 @@ class Generator
...
@@ -323,14 +326,15 @@ class Generator
/**
/**
* @return string
* @return string
*/
*/
public
function
getFullNamespace
(
$name
,
$inside_directory
=
null
)
public
function
getFullNamespace
(
$name
,
$inside_directory
=
null
)
{
{
if
(
empty
(
$name
)
)
if
(
empty
(
$name
))
{
return
$this
->
directory
;
return
$this
->
directory
;
else
if
(
$inside_directory
)
}
elseif
(
$inside_directory
)
{
return
$this
->
directory
.
'\\'
.
$inside_directory
.
'\\'
.
$name
;
return
$this
->
directory
.
'\\'
.
$inside_directory
.
'\\'
.
$name
;
else
}
else
{
return
$this
->
directory
.
'\\'
.
$name
;
return
$this
->
directory
.
'\\'
.
$name
;
}
}
}
/**
/**
...
@@ -338,37 +342,37 @@ class Generator
...
@@ -338,37 +342,37 @@ class Generator
*/
*/
public
function
createModel
()
public
function
createModel
()
{
{
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
attribute_namespace
)
);
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
attribute_namespace
)
);
//Generate Attribute File
//Generate Attribute File
$this
->
generateFile
(
'Attribute'
,
[
$this
->
generateFile
(
'Attribute'
,
[
'AttributeNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
attribute_namespace
)
),
'AttributeNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
attribute_namespace
)
),
'AttributeClass'
=>
$this
->
attribute
,
'AttributeClass'
=>
$this
->
attribute
,
],
lcfirst
(
$this
->
attribute_namespace
)
);
],
lcfirst
(
$this
->
attribute_namespace
)
);
//Generate Relationship File
//Generate Relationship File
$this
->
generateFile
(
'Relationship'
,
[
$this
->
generateFile
(
'Relationship'
,
[
'RelationshipNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
relationship_namespace
)
),
'RelationshipNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
relationship_namespace
)
),
'RelationshipClass'
=>
$this
->
relationship
,
'RelationshipClass'
=>
$this
->
relationship
,
],
lcfirst
(
$this
->
relationship_namespace
)
);
],
lcfirst
(
$this
->
relationship_namespace
)
);
//Generate Model File
//Generate Model File
$this
->
generateFile
(
'Model'
,
[
$this
->
generateFile
(
'Model'
,
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
model_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
model_namespace
)
),
'DummyAttribute'
=>
$this
->
attribute_namespace
,
'DummyAttribute'
=>
$this
->
attribute_namespace
,
'DummyRelationship'
=>
$this
->
relationship_namespace
,
'DummyRelationship'
=>
$this
->
relationship_namespace
,
'AttributeName'
=>
$this
->
attribute
,
'AttributeName'
=>
$this
->
attribute
,
'RelationshipName'
=>
$this
->
relationship
,
'RelationshipName'
=>
$this
->
relationship
,
'DummyModel'
=>
$this
->
model
,
'DummyModel'
=>
$this
->
model
,
'table_name'
=>
$this
->
table
,
'table_name'
=>
$this
->
table
,
],
lcfirst
(
$this
->
model_namespace
)
);
],
lcfirst
(
$this
->
model_namespace
)
);
}
}
/**
/**
* @return void
* @return void
*/
*/
public
function
createDirectory
(
$path
)
public
function
createDirectory
(
$path
)
{
{
$this
->
files
->
makeDirectory
(
$path
,
0777
,
true
,
true
);
$this
->
files
->
makeDirectory
(
$path
,
0777
,
true
,
true
);
}
}
/**
/**
...
@@ -377,54 +381,54 @@ class Generator
...
@@ -377,54 +381,54 @@ class Generator
public
function
createRequests
()
public
function
createRequests
()
{
{
$this
->
request_namespace
.=
$this
->
getFullNamespace
(
''
);
$this
->
request_namespace
.=
$this
->
getFullNamespace
(
''
);
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
request_namespace
)
);
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
request_namespace
)
);
// dd('here');
// dd('here');
//Generate Manage Request File
//Generate Manage Request File
$this
->
generateFile
(
'Request'
,
[
$this
->
generateFile
(
'Request'
,
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
manage_request_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
manage_request_namespace
)
),
'DummyClass'
=>
$this
->
manage_request
,
'DummyClass'
=>
$this
->
manage_request
,
'permission'
=>
$this
->
manage_permission
'permission'
=>
$this
->
manage_permission
,
],
lcfirst
(
$this
->
manage_request_namespace
)
);
],
lcfirst
(
$this
->
manage_request_namespace
)
);
if
(
$this
->
create
)
{
if
(
$this
->
create
)
{
//Generate Create Request File
//Generate Create Request File
$this
->
generateFile
(
'Request'
,
[
$this
->
generateFile
(
'Request'
,
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
create_request_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
create_request_namespace
)
),
'DummyClass'
=>
$this
->
create_request
,
'DummyClass'
=>
$this
->
create_request
,
'permission'
=>
$this
->
create_permission
'permission'
=>
$this
->
create_permission
,
],
lcfirst
(
$this
->
create_request_namespace
)
);
],
lcfirst
(
$this
->
create_request_namespace
)
);
//Generate Store Request File
//Generate Store Request File
$this
->
generateFile
(
'Request'
,
[
$this
->
generateFile
(
'Request'
,
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
store_request_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
store_request_namespace
)
),
'DummyClass'
=>
$this
->
store_request
,
'DummyClass'
=>
$this
->
store_request
,
'permission'
=>
$this
->
store_permission
'permission'
=>
$this
->
store_permission
,
],
lcfirst
(
$this
->
store_request_namespace
)
);
],
lcfirst
(
$this
->
store_request_namespace
)
);
}
}
if
(
$this
->
edit
)
{
if
(
$this
->
edit
)
{
//Generate Edit Request File
//Generate Edit Request File
$this
->
generateFile
(
'Request'
,
[
$this
->
generateFile
(
'Request'
,
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
edit_request_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
edit_request_namespace
)
),
'DummyClass'
=>
$this
->
edit_request
,
'DummyClass'
=>
$this
->
edit_request
,
'permission'
=>
$this
->
edit_permission
'permission'
=>
$this
->
edit_permission
,
],
lcfirst
(
$this
->
edit_request_namespace
)
);
],
lcfirst
(
$this
->
edit_request_namespace
)
);
//Generate Update Request File
//Generate Update Request File
$this
->
generateFile
(
'Request'
,
[
$this
->
generateFile
(
'Request'
,
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
update_request_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
update_request_namespace
)
),
'DummyClass'
=>
$this
->
update_request
,
'DummyClass'
=>
$this
->
update_request
,
'permission'
=>
$this
->
update_permission
'permission'
=>
$this
->
update_permission
,
],
lcfirst
(
$this
->
update_request_namespace
)
);
],
lcfirst
(
$this
->
update_request_namespace
)
);
}
}
if
(
$this
->
delete
)
{
if
(
$this
->
delete
)
{
//Generate Delete Request File
//Generate Delete Request File
$this
->
generateFile
(
'Request'
,
[
$this
->
generateFile
(
'Request'
,
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
delete_request_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
delete_request_namespace
)
),
'DummyClass'
=>
$this
->
delete_request
,
'DummyClass'
=>
$this
->
delete_request
,
'permission'
=>
$this
->
delete_permission
'permission'
=>
$this
->
delete_permission
,
],
lcfirst
(
$this
->
delete_request_namespace
)
);
],
lcfirst
(
$this
->
delete_request_namespace
)
);
}
}
}
}
...
@@ -433,42 +437,42 @@ class Generator
...
@@ -433,42 +437,42 @@ class Generator
*/
*/
public
function
createRepository
()
public
function
createRepository
()
{
{
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
repo_namespace
)
);
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
repo_namespace
)
);
//Getting stub file content
//Getting stub file content
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'Repository.stub'
);
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'Repository.stub'
);
//If Model Create is checked
//If Model Create is checked
if
(
!
$this
->
create
)
{
if
(
!
$this
->
create
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@endCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@endCreate'
,
$file_contents
);
}
else
{
//If it isn't
}
else
{
//If it isn't
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@startCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@startCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endCreate'
,
'@endCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endCreate'
,
'@endCreate'
,
$file_contents
);
}
}
//If Model Edit is Checked
//If Model Edit is Checked
if
(
!
$this
->
edit
)
{
if
(
!
$this
->
edit
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@endEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@endEdit'
,
$file_contents
);
}
else
{
//If it isn't
}
else
{
//If it isn't
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@startEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@startEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endEdit'
,
'@endEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endEdit'
,
'@endEdit'
,
$file_contents
);
}
}
//If Model Delete is Checked
//If Model Delete is Checked
if
(
!
$this
->
delete
)
{
if
(
!
$this
->
delete
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@endDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@endDelete'
,
$file_contents
);
}
else
{
//If it isn't
}
else
{
//If it isn't
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@startDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@startDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endDelete'
,
'@endDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endDelete'
,
'@endDelete'
,
$file_contents
);
}
}
//Replacements to be done in repository stub file
//Replacements to be done in repository stub file
$replacements
=
[
$replacements
=
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
repo_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
repo_namespace
)
),
'DummyModelNamespace'
=>
$this
->
model_namespace
,
'DummyModelNamespace'
=>
$this
->
model_namespace
,
'DummyRepoName'
=>
$this
->
repository
,
'DummyRepoName'
=>
$this
->
repository
,
'dummy_model_name'
=>
$this
->
model
,
'dummy_model_name'
=>
$this
->
model
,
'dummy_small_model_name'
=>
strtolower
(
$this
->
model
),
'dummy_small_model_name'
=>
strtolower
(
$this
->
model
),
'model_small_plural'
=>
strtolower
(
str_plural
(
$this
->
model
)
),
'model_small_plural'
=>
strtolower
(
str_plural
(
$this
->
model
)
),
'dummy_small_plural_model_name'
=>
strtolower
(
str_plural
(
$this
->
model
)
),
'dummy_small_plural_model_name'
=>
strtolower
(
str_plural
(
$this
->
model
)
),
];
];
//Generating the repo file
//Generating the repo file
$this
->
generateFile
(
false
,
$replacements
,
lcfirst
(
$this
->
repo_namespace
),
$file_contents
);
$this
->
generateFile
(
false
,
$replacements
,
lcfirst
(
$this
->
repo_namespace
),
$file_contents
);
}
}
/**
/**
...
@@ -477,61 +481,61 @@ class Generator
...
@@ -477,61 +481,61 @@ class Generator
public
function
createController
()
public
function
createController
()
{
{
// dd($this->controller_namespace);
// dd($this->controller_namespace);
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
controller_namespace
,
true
)
);
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
controller_namespace
,
true
)
);
//Getting stub file content
//Getting stub file content
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'Controller.stub'
);
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'Controller.stub'
);
//Replacements to be done in controller stub
//Replacements to be done in controller stub
$replacements
=
[
$replacements
=
[
'DummyModelNamespace'
=>
$this
->
model_namespace
,
'DummyModelNamespace'
=>
$this
->
model_namespace
,
'DummyModel'
=>
$this
->
model
,
'DummyModel'
=>
$this
->
model
,
'DummyArgumentName'
=>
strtolower
(
$this
->
model
),
'DummyArgumentName'
=>
strtolower
(
$this
->
model
),
'DummyManageRequestNamespace'
=>
$this
->
manage_request_namespace
,
'DummyManageRequestNamespace'
=>
$this
->
manage_request_namespace
,
'DummyManageRequest'
=>
$this
->
manage_request
,
'DummyManageRequest'
=>
$this
->
manage_request
,
'DummyController'
=>
$this
->
controller
,
'DummyController'
=>
$this
->
controller
,
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
controller_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
controller_namespace
)
),
'DummyRepositoryNamespace'
=>
$this
->
repo_namespace
,
'DummyRepositoryNamespace'
=>
$this
->
repo_namespace
,
'dummy_repository'
=>
$this
->
repository
,
'dummy_repository'
=>
$this
->
repository
,
'dummy_small_plural_model'
=>
strtolower
(
str_plural
(
$this
->
model
)
),
'dummy_small_plural_model'
=>
strtolower
(
str_plural
(
$this
->
model
)
),
];
];
$namespaces
=
''
;
$namespaces
=
''
;
if
(
!
$this
->
create
)
{
if
(
!
$this
->
create
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@endCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@endCreate'
,
$file_contents
);
}
else
{
}
else
{
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@startCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@startCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endCreate'
,
'@endCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endCreate'
,
'@endCreate'
,
$file_contents
);
//replacements
//replacements
$namespaces
.=
"use "
.
$this
->
create_request_namespace
.
";
\n
"
;
$namespaces
.=
'use '
.
$this
->
create_request_namespace
.
";
\n
"
;
$namespaces
.=
"use "
.
$this
->
store_request_namespace
.
";
\n
"
;
$namespaces
.=
'use '
.
$this
->
store_request_namespace
.
";
\n
"
;
$replacements
[
'DummyCreateRequest'
]
=
$this
->
create_request
;
$replacements
[
'DummyCreateRequest'
]
=
$this
->
create_request
;
$replacements
[
'DummyStoreRequest'
]
=
$this
->
store_request
;
$replacements
[
'DummyStoreRequest'
]
=
$this
->
store_request
;
}
}
if
(
!
$this
->
edit
)
{
if
(
!
$this
->
edit
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@endEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@endEdit'
,
$file_contents
);
}
else
{
}
else
{
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@startEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@startEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endEdit'
,
'@endEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endEdit'
,
'@endEdit'
,
$file_contents
);
//replacements
//replacements
$namespaces
.=
"use "
.
$this
->
edit_request_namespace
.
";
\n
"
;
$namespaces
.=
'use '
.
$this
->
edit_request_namespace
.
";
\n
"
;
$namespaces
.=
"use "
.
$this
->
update_request_namespace
.
";
\n
"
;
$namespaces
.=
'use '
.
$this
->
update_request_namespace
.
";
\n
"
;
$replacements
[
'DummyEditRequest'
]
=
$this
->
edit_request
;
$replacements
[
'DummyEditRequest'
]
=
$this
->
edit_request
;
$replacements
[
'DummyUpdateRequest'
]
=
$this
->
update_request
;
$replacements
[
'DummyUpdateRequest'
]
=
$this
->
update_request
;
}
}
if
(
!
$this
->
delete
)
{
if
(
!
$this
->
delete
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@endDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@endDelete'
,
$file_contents
);
}
else
{
}
else
{
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@startDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@startDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endDelete'
,
'@endDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endDelete'
,
'@endDelete'
,
$file_contents
);
//replacements
//replacements
$namespaces
.=
"use "
.
$this
->
delete_request_namespace
.
";
\n
"
;
$namespaces
.=
'use '
.
$this
->
delete_request_namespace
.
";
\n
"
;
$replacements
[
'DummyDeleteRequest'
]
=
$this
->
delete_request
;
$replacements
[
'DummyDeleteRequest'
]
=
$this
->
delete_request
;
}
}
//Putting Namespaces in Controller
//Putting Namespaces in Controller
$file_contents
=
str_replace
(
'@Namespaces'
,
$namespaces
,
$file_contents
);
$file_contents
=
str_replace
(
'@Namespaces'
,
$namespaces
,
$file_contents
);
$this
->
generateFile
(
false
,
$replacements
,
lcfirst
(
$this
->
controller_namespace
),
$file_contents
);
$this
->
generateFile
(
false
,
$replacements
,
lcfirst
(
$this
->
controller_namespace
),
$file_contents
);
}
}
/**
/**
...
@@ -539,19 +543,19 @@ class Generator
...
@@ -539,19 +543,19 @@ class Generator
*/
*/
public
function
createTableController
()
public
function
createTableController
()
{
{
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
table_controller_namespace
,
true
)
);
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
table_controller_namespace
,
true
)
);
//replacements to be done in table controller stub
//replacements to be done in table controller stub
$replacements
=
[
$replacements
=
[
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
table_controller_namespace
)
),
'DummyNamespace'
=>
ucfirst
(
$this
->
removeFileNameFromEndOfNamespace
(
$this
->
table_controller_namespace
)
),
'DummyRepositoryNamespace'
=>
$this
->
repo_namespace
,
'DummyRepositoryNamespace'
=>
$this
->
repo_namespace
,
'DummyManageRequestNamespace'
=>
$this
->
manage_request_namespace
,
'DummyManageRequestNamespace'
=>
$this
->
manage_request_namespace
,
'DummyTableController'
=>
$this
->
table_controller
,
'DummyTableController'
=>
$this
->
table_controller
,
'dummy_repository'
=>
$this
->
repository
,
'dummy_repository'
=>
$this
->
repository
,
'dummy_small_repo_name'
=>
strtolower
(
$this
->
model
),
'dummy_small_repo_name'
=>
strtolower
(
$this
->
model
),
'dummy_manage_request_name'
=>
$this
->
manage_request
,
'dummy_manage_request_name'
=>
$this
->
manage_request
,
];
];
//generating the file
//generating the file
$this
->
generateFile
(
'TableController'
,
$replacements
,
lcfirst
(
$this
->
table_controller_namespace
)
);
$this
->
generateFile
(
'TableController'
,
$replacements
,
lcfirst
(
$this
->
table_controller_namespace
)
);
}
}
/**
/**
...
@@ -559,51 +563,51 @@ class Generator
...
@@ -559,51 +563,51 @@ class Generator
*/
*/
public
function
createRouteFiles
()
public
function
createRouteFiles
()
{
{
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
route_path
)
);
$this
->
createDirectory
(
$this
->
getBasePath
(
$this
->
route_path
)
);
if
(
$this
->
create
&&
$this
->
edit
&&
$this
->
delete
)
{
//Then get the resourceRoute stub
if
(
$this
->
create
&&
$this
->
edit
&&
$this
->
delete
)
{
//Then get the resourceRoute stub
//Getting stub file content
//Getting stub file content
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'resourceRoute.stub'
);
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'resourceRoute.stub'
);
$file_contents
=
$this
->
delete_all_between
(
'@startNamespace'
,
'@startNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startNamespace'
,
'@startNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endNamespace'
,
'@endNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endNamespace'
,
'@endNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startWithoutNamespace'
,
'@endWithoutNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startWithoutNamespace'
,
'@endWithoutNamespace'
,
$file_contents
);
}
else
{
//Get the basic route stub
}
else
{
//Get the basic route stub
//Getting stub file content
//Getting stub file content
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'route.stub'
);
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'route.stub'
);
$file_contents
=
$this
->
delete_all_between
(
'@startNamespace'
,
'@startNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startNamespace'
,
'@startNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endNamespace'
,
'@endNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endNamespace'
,
'@endNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startWithoutNamespace'
,
'@endWithoutNamespace'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startWithoutNamespace'
,
'@endWithoutNamespace'
,
$file_contents
);
//If create is checked
//If create is checked
if
(
$this
->
create
)
{
if
(
$this
->
create
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@startCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@startCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endCreate'
,
'@endCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endCreate'
,
'@endCreate'
,
$file_contents
);
}
else
{
//If it isn't
}
else
{
//If it isn't
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@endCreate'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startCreate'
,
'@endCreate'
,
$file_contents
);
}
}
//If Edit is checked
//If Edit is checked
if
(
$this
->
edit
)
{
if
(
$this
->
edit
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@startEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@startEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endEdit'
,
'@endEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endEdit'
,
'@endEdit'
,
$file_contents
);
}
else
{
//if it isn't
}
else
{
//if it isn't
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@endEdit'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startEdit'
,
'@endEdit'
,
$file_contents
);
}
}
//If delete is checked
//If delete is checked
if
(
$this
->
delete
)
{
if
(
$this
->
delete
)
{
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@startDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@startDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endDelete'
,
'@endDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@endDelete'
,
'@endDelete'
,
$file_contents
);
}
else
{
//If it isn't
}
else
{
//If it isn't
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@endDelete'
,
$file_contents
);
$file_contents
=
$this
->
delete_all_between
(
'@startDelete'
,
'@endDelete'
,
$file_contents
);
}
}
}
}
//Generate the Route file
//Generate the Route file
$this
->
generateFile
(
false
,
[
$this
->
generateFile
(
false
,
[
'DummyModuleName'
=>
$this
->
module
,
'DummyModuleName'
=>
$this
->
module
,
'DummyModel'
=>
$this
->
directory
,
'DummyModel'
=>
$this
->
directory
,
'dummy_name'
=>
strtolower
(
str_plural
(
$this
->
model
)
),
'dummy_name'
=>
strtolower
(
str_plural
(
$this
->
model
)
),
'DummyController'
=>
$this
->
controller
,
'DummyController'
=>
$this
->
controller
,
'DummyTableController'
=>
$this
->
table_controller
,
'DummyTableController'
=>
$this
->
table_controller
,
'dummy_argument_name'
=>
strtolower
(
$this
->
model
),
'dummy_argument_name'
=>
strtolower
(
$this
->
model
),
],
$this
->
route_path
.
$this
->
model
,
$file_contents
);
],
$this
->
route_path
.
$this
->
model
,
$file_contents
);
}
}
/**
/**
...
@@ -614,19 +618,19 @@ class Generator
...
@@ -614,19 +618,19 @@ class Generator
public
function
insertToLanguageFiles
()
public
function
insertToLanguageFiles
()
{
{
//Model singular version
//Model singular version
$model_singular
=
ucfirst
(
str_singular
(
$this
->
model
)
);
$model_singular
=
ucfirst
(
str_singular
(
$this
->
model
)
);
//Model Plural version
//Model Plural version
$model_plural
=
strtolower
(
str_plural
(
$this
->
model
)
);
$model_plural
=
strtolower
(
str_plural
(
$this
->
model
)
);
//Model plural with capitalize
//Model plural with capitalize
$model_plural_capital
=
ucfirst
(
$model_plural
);
$model_plural_capital
=
ucfirst
(
$model_plural
);
//Findind which locale is being used
//Findind which locale is being used
$locale
=
config
(
'app.locale'
);
$locale
=
config
(
'app.locale'
);
//Path to that language files
//Path to that language files
$path
=
resource_path
(
'lang'
.
DIRECTORY_SEPARATOR
.
$locale
);
$path
=
resource_path
(
'lang'
.
DIRECTORY_SEPARATOR
.
$locale
);
//config folder path
//config folder path
$config_path
=
config_path
(
'module.php'
);
$config_path
=
config_path
(
'module.php'
);
//Creating directory if it isn't
//Creating directory if it isn't
$this
->
createDirectory
(
$path
);
$this
->
createDirectory
(
$path
);
//Labels file
//Labels file
$labels
=
[
$labels
=
[
'create'
=>
"Create
$model_singular
"
,
'create'
=>
"Create
$model_singular
"
,
...
@@ -640,7 +644,7 @@ class Generator
...
@@ -640,7 +644,7 @@ class Generator
],
],
];
];
//Pushing values to labels
//Pushing values to labels
add_key_value_in_file
(
$path
.
'/labels.php'
,
array
(
$model_plural
=>
$labels
),
'backend'
);
add_key_value_in_file
(
$path
.
'/labels.php'
,
[
$model_plural
=>
$labels
],
'backend'
);
//Menus file
//Menus file
$menus
=
[
$menus
=
[
'all'
=>
"All
$model_plural_capital
"
,
'all'
=>
"All
$model_plural_capital
"
,
...
@@ -650,7 +654,7 @@ class Generator
...
@@ -650,7 +654,7 @@ class Generator
'main'
=>
"
$model_plural_capital
"
,
'main'
=>
"
$model_plural_capital
"
,
];
];
//Pushing to menus file
//Pushing to menus file
add_key_value_in_file
(
$path
.
'/menus.php'
,
array
(
$model_plural
=>
$menus
),
'backend'
);
add_key_value_in_file
(
$path
.
'/menus.php'
,
[
$model_plural
=>
$menus
],
'backend'
);
//Exceptions file
//Exceptions file
$exceptions
=
[
$exceptions
=
[
'already_exists'
=>
"That
$model_singular
already exists. Please choose a different name."
,
'already_exists'
=>
"That
$model_singular
already exists. Please choose a different name."
,
...
@@ -666,9 +670,9 @@ class Generator
...
@@ -666,9 +670,9 @@ class Generator
'updated'
=>
"The
$model_singular
was successfully updated."
,
'updated'
=>
"The
$model_singular
was successfully updated."
,
];
];
//Pushing to menus file
//Pushing to menus file
add_key_value_in_file
(
$path
.
'/alerts.php'
,
array
(
$model_plural
=>
$alerts
),
'backend'
);
add_key_value_in_file
(
$path
.
'/alerts.php'
,
[
$model_plural
=>
$alerts
],
'backend'
);
//Pushing to exceptions file
//Pushing to exceptions file
add_key_value_in_file
(
$path
.
'/exceptions.php'
,
array
(
$model_plural
=>
$exceptions
),
'backend'
);
add_key_value_in_file
(
$path
.
'/exceptions.php'
,
[
$model_plural
=>
$exceptions
],
'backend'
);
//config file "module.php"
//config file "module.php"
$config
=
[
$config
=
[
$model_plural
=>
[
$model_plural
=>
[
...
@@ -676,7 +680,7 @@ class Generator
...
@@ -676,7 +680,7 @@ class Generator
],
],
];
];
//Pushing to config file
//Pushing to config file
add_key_value_in_file
(
$config_path
,
$config
);
add_key_value_in_file
(
$config_path
,
$config
);
}
}
/**
/**
...
@@ -695,16 +699,16 @@ class Generator
...
@@ -695,16 +699,16 @@ class Generator
//View folder name
//View folder name
$view_folder_name
=
$model_lower_plural
;
$view_folder_name
=
$model_lower_plural
;
//View path
//View path
$path
=
escapeSlashes
(
strtolower
(
str_plural
(
$this
->
view_path
)
)
);
$path
=
escapeSlashes
(
strtolower
(
str_plural
(
$this
->
view_path
))
);
//Header buttons folder
//Header buttons folder
$header_button_path
=
$path
.
DIRECTORY_SEPARATOR
.
'partials'
;
$header_button_path
=
$path
.
DIRECTORY_SEPARATOR
.
'partials'
;
//This would create both the directory name as well as partials inside of that directory
//This would create both the directory name as well as partials inside of that directory
$this
->
createDirectory
(
base_path
(
$header_button_path
)
);
$this
->
createDirectory
(
base_path
(
$header_button_path
)
);
//Header button full path
//Header button full path
$header_button_file_path
=
$header_button_path
.
DIRECTORY_SEPARATOR
.
"
$model_lower_plural
-header-buttons.blade"
;
$header_button_file_path
=
$header_button_path
.
DIRECTORY_SEPARATOR
.
"
$model_lower_plural
-header-buttons.blade"
;
//Getting stub file content
//Getting stub file content
$header_button_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'header-buttons.stub'
);
$header_button_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
'header-buttons.stub'
);
if
(
!
$this
->
create
)
{
if
(
!
$this
->
create
)
{
$header_button_contents
=
$this
->
delete_all_between
(
'@create'
,
'@endCreate'
,
$header_button_contents
);
$header_button_contents
=
$this
->
delete_all_between
(
'@create'
,
'@endCreate'
,
$header_button_contents
);
}
else
{
}
else
{
$header_button_contents
=
$this
->
delete_all_between
(
'@create'
,
'@create'
,
$header_button_contents
);
$header_button_contents
=
$this
->
delete_all_between
(
'@create'
,
'@create'
,
$header_button_contents
);
...
@@ -713,46 +717,47 @@ class Generator
...
@@ -713,46 +717,47 @@ class Generator
//Generate Header buttons file
//Generate Header buttons file
$this
->
generateFile
(
false
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
,
'dummy_small_model'
=>
$model_lower
],
$header_button_file_path
,
$header_button_contents
);
$this
->
generateFile
(
false
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
,
'dummy_small_model'
=>
$model_lower
],
$header_button_file_path
,
$header_button_contents
);
//Index blade
//Index blade
$index_path
=
$path
.
DIRECTORY_SEPARATOR
.
'index.blade'
;
$index_path
=
$path
.
DIRECTORY_SEPARATOR
.
'index.blade'
;
//Generate the Index blade file
//Generate the Index blade file
$this
->
generateFile
(
'index_view'
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
],
$index_path
);
$this
->
generateFile
(
'index_view'
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
],
$index_path
);
//Create Blade
//Create Blade
if
(
$this
->
create
)
{
if
(
$this
->
create
)
{
//Create Blade
//Create Blade
$create_path
=
$path
.
DIRECTORY_SEPARATOR
.
'create.blade'
;
$create_path
=
$path
.
DIRECTORY_SEPARATOR
.
'create.blade'
;
//Generate Create Blade
//Generate Create Blade
$this
->
generateFile
(
'create_view'
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
,
'dummy_small_model'
=>
$model_lower
],
$create_path
);
$this
->
generateFile
(
'create_view'
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
,
'dummy_small_model'
=>
$model_lower
],
$create_path
);
}
}
//Edit Blade
//Edit Blade
if
(
$this
->
edit
)
{
if
(
$this
->
edit
)
{
//Edit Blade
//Edit Blade
$edit_path
=
$path
.
DIRECTORY_SEPARATOR
.
'edit.blade'
;
$edit_path
=
$path
.
DIRECTORY_SEPARATOR
.
'edit.blade'
;
//Generate Edit Blade
//Generate Edit Blade
$this
->
generateFile
(
'edit_view'
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
,
'dummy_small_model'
=>
$model_lower
],
$edit_path
);
$this
->
generateFile
(
'edit_view'
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
,
'dummy_small_model'
=>
$model_lower
],
$edit_path
);
}
}
//Form Blade
//Form Blade
if
(
$this
->
create
||
$this
->
edit
)
{
if
(
$this
->
create
||
$this
->
edit
)
{
//Form Blade
//Form Blade
$form_path
=
$path
.
DIRECTORY_SEPARATOR
.
'form.blade'
;
$form_path
=
$path
.
DIRECTORY_SEPARATOR
.
'form.blade'
;
//Generate Form Blade
//Generate Form Blade
$this
->
generateFile
(
'form_view'
,
[],
$form_path
);
$this
->
generateFile
(
'form_view'
,
[],
$form_path
);
}
}
//BreadCrumbs Folder Path
//BreadCrumbs Folder Path
$breadcrumbs_path
=
escapeSlashes
(
'app\\Http\\Breadcrumbs\\Backend'
);
$breadcrumbs_path
=
escapeSlashes
(
'app\\Http\\Breadcrumbs\\Backend'
);
//Breadcrumb File path
//Breadcrumb File path
$breadcrumb_file_path
=
$breadcrumbs_path
.
DIRECTORY_SEPARATOR
.
$this
->
model
;
$breadcrumb_file_path
=
$breadcrumbs_path
.
DIRECTORY_SEPARATOR
.
$this
->
model
;
//Generate BreadCrumb File
//Generate BreadCrumb File
$this
->
generateFile
(
'Breadcrumbs'
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
],
$breadcrumb_file_path
);
$this
->
generateFile
(
'Breadcrumbs'
,
[
'dummy_small_plural_model'
=>
$model_lower_plural
],
$breadcrumb_file_path
);
//Backend File of Breadcrumb
//Backend File of Breadcrumb
$breadcrumb_backend_file
=
$breadcrumbs_path
.
DIRECTORY_SEPARATOR
.
'Backend.php'
;
$breadcrumb_backend_file
=
$breadcrumbs_path
.
DIRECTORY_SEPARATOR
.
'Backend.php'
;
//file_contents of Backend.php
//file_contents of Backend.php
$file_contents
=
file_get_contents
(
base_path
(
$breadcrumb_backend_file
)
);
$file_contents
=
file_get_contents
(
base_path
(
$breadcrumb_backend_file
)
);
//If this is already not there, then only append
//If this is already not there, then only append
if
(
!
strpos
(
$file_contents
,
"require __DIR__.'/
$this->model
.php';"
)
)
{
if
(
!
strpos
(
$file_contents
,
"require __DIR__.'/
$this->model
.php';"
)
)
{
//Appending into BreadCrumb backend file
//Appending into BreadCrumb backend file
file_put_contents
(
base_path
(
$breadcrumb_backend_file
),
"
\n
require __DIR__.'/
$this->model
.php';"
,
FILE_APPEND
);
file_put_contents
(
base_path
(
$breadcrumb_backend_file
),
"
\n
require __DIR__.'/
$this->model
.php';"
,
FILE_APPEND
);
}
}
}
}
/**
/**
* Creating Table File.
* Creating Table File.
*
*
...
@@ -762,11 +767,11 @@ class Generator
...
@@ -762,11 +767,11 @@ class Generator
{
{
$table
=
$this
->
table
;
$table
=
$this
->
table
;
if
(
Schema
::
hasTable
(
$table
)
)
{
if
(
Schema
::
hasTable
(
$table
)
)
{
return
'Table Already Exists!'
;
return
'Table Already Exists!'
;
}
else
{
}
else
{
//Calling Artisan command to create table
//Calling Artisan command to create table
Artisan
::
call
(
'make:migration'
,
[
Artisan
::
call
(
'make:migration'
,
[
'name'
=>
'create_'
.
$table
.
'_table'
,
'name'
=>
'create_'
.
$table
.
'_table'
,
'--create'
=>
$table
,
'--create'
=>
$table
,
]);
]);
...
@@ -808,22 +813,22 @@ class Generator
...
@@ -808,22 +813,22 @@ class Generator
* @param $file [string] full path of the file
* @param $file [string] full path of the file
* @param $contents [string][optional] file contents
* @param $contents [string][optional] file contents
*/
*/
public
function
generateFile
(
$stub_name
,
$replacements
,
$file
,
$contents
=
null
)
public
function
generateFile
(
$stub_name
,
$replacements
,
$file
,
$contents
=
null
)
{
{
if
(
$stub_name
)
{
if
(
$stub_name
)
{
//Getting the Stub Files Content
//Getting the Stub Files Content
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
$stub_name
.
'.stub'
);
$file_contents
=
$this
->
files
->
get
(
$this
->
getStubPath
()
.
$stub_name
.
'.stub'
);
}
else
{
}
else
{
//Getting the Stub Files Content
//Getting the Stub Files Content
$file_contents
=
$contents
;
$file_contents
=
$contents
;
}
}
//Replacing the stub
//Replacing the stub
$file_contents
=
str_replace
(
$file_contents
=
str_replace
(
array_keys
(
$replacements
),
array_keys
(
$replacements
),
array_values
(
$replacements
),
array_values
(
$replacements
),
$file_contents
$file_contents
);
);
$this
->
files
->
put
(
base_path
(
escapeSlashes
(
$file
)
)
.
'.php'
,
$file_contents
);
$this
->
files
->
put
(
base_path
(
escapeSlashes
(
$file
))
.
'.php'
,
$file_contents
);
}
}
/**
/**
...
@@ -833,29 +838,30 @@ class Generator
...
@@ -833,29 +838,30 @@ class Generator
*/
*/
public
function
getStubPath
()
public
function
getStubPath
()
{
{
return
app_path
(
'Console'
.
DIRECTORY_SEPARATOR
.
'Commands'
.
DIRECTORY_SEPARATOR
.
'Stubs'
.
DIRECTORY_SEPARATOR
);
return
app_path
(
'Console'
.
DIRECTORY_SEPARATOR
.
'Commands'
.
DIRECTORY_SEPARATOR
.
'Stubs'
.
DIRECTORY_SEPARATOR
);
}
}
public
function
getBasePath
(
$namespace
,
$status
=
false
)
public
function
getBasePath
(
$namespace
,
$status
=
false
)
{
{
if
(
$status
)
{
if
(
$status
)
{
return
base_path
(
escapeSlashes
(
$this
->
removeFileNameFromEndOfNamespace
(
$namespace
,
$status
)
)
);
return
base_path
(
escapeSlashes
(
$this
->
removeFileNameFromEndOfNamespace
(
$namespace
,
$status
))
);
}
}
return
base_path
(
lcfirst
(
escapeSlashes
(
$namespace
)
)
);
return
base_path
(
lcfirst
(
escapeSlashes
(
$namespace
)));
}
}
public
function
removeFileNameFromEndOfNamespace
(
$namespace
)
public
function
removeFileNameFromEndOfNamespace
(
$namespace
)
{
{
$namespace
=
explode
(
"
\\
"
,
$namespace
);
$namespace
=
explode
(
'\\'
,
$namespace
);
unset
(
$namespace
[
count
(
$namespace
)
-
1
]
);
unset
(
$namespace
[
count
(
$namespace
)
-
1
]
);
return
lcfirst
(
implode
(
"
\\
"
,
$namespace
)
);
return
lcfirst
(
implode
(
'\\'
,
$namespace
)
);
}
}
public
function
appendFileNameToEndOfNamespace
(
$namespace
,
$file
)
public
function
appendFileNameToEndOfNamespace
(
$namespace
,
$file
)
{
{
return
escapeSlashes
(
$namespace
.
DIRECTORY_SEPARATOR
.
$file
);
return
escapeSlashes
(
$namespace
.
DIRECTORY_SEPARATOR
.
$file
);
}
}
/**
/**
...
...
app/Repositories/Backend/Module/ModuleRepository.php
View file @
19448c13
...
@@ -59,7 +59,7 @@ class ModuleRepository extends BaseRepository
...
@@ -59,7 +59,7 @@ class ModuleRepository extends BaseRepository
foreach
(
$permissions
as
$permission
)
{
foreach
(
$permissions
as
$permission
)
{
$perm
=
[
$perm
=
[
'name'
=>
$permission
,
'name'
=>
$permission
,
'display_name'
=>
title_case
(
str_replace
(
'-'
,
' '
,
$permission
)
)
.
" Permission"
'display_name'
=>
title_case
(
str_replace
(
'-'
,
' '
,
$permission
))
.
' Permission'
,
];
];
//Creating Permission
//Creating Permission
$per
=
Permission
::
firstOrCreate
(
$perm
);
$per
=
Permission
::
firstOrCreate
(
$perm
);
...
@@ -68,7 +68,7 @@ class ModuleRepository extends BaseRepository
...
@@ -68,7 +68,7 @@ class ModuleRepository extends BaseRepository
$mod
=
[
$mod
=
[
'view_permission_id'
=>
"view-
$model
-permission"
,
'view_permission_id'
=>
"view-
$model
-permission"
,
'name'
=>
$input
[
'name'
],
'name'
=>
$input
[
'name'
],
'url'
=>
'admin.'
.
str_plural
(
$model
)
.
'.index'
,
'url'
=>
'admin.'
.
str_plural
(
$model
)
.
'.index'
,
'created_by'
=>
access
()
->
user
()
->
id
,
'created_by'
=>
access
()
->
user
()
->
id
,
];
];
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment