Compare commits

..
4 Commits
Author SHA1 Message Date
Barry vd. Heuvel 3ebfcd1c6c Make facade for interface possible
Fixes #36
2013-10-18 10:17:11 +02:00
Barry vd. Heuvel c3afd5f63c Add ignore option
To ignore models, use the --ignore (-I) argument:
php artisan ide-helper:models --ignore="Admin\Model"
php artisan ide-helper:models -I Post,User
Fixes #35
2013-10-18 10:04:46 +02:00
Barry vd. Heuvel 92abb112e9 Force No answer for writing to files
To write to single file instead, use --nowrite or -N (as mentioned in
#35)
2013-10-18 09:52:41 +02:00
Barry vd. Heuvel 7e1c64fb95 Add SessionStore to Session Facade
Because of changes to the session facade. Fixes #37
2013-10-18 09:35:33 +02:00
3 changed files with 18 additions and 5 deletions
@@ -147,7 +147,9 @@ exit('Only to be used as an helper for your IDE');\n\n";
try{
//Some classes extend the facade
if(class_exists($facade)){
if(interface_exists($facade)){
$output .= "interface $alias extends $facade{\n";
}elseif(class_exists($facade)){
$output .= "class $alias extends $facade{\n";
}else{
$output .= "class $alias{\n";
@@ -58,16 +58,17 @@ class ModelsCommand extends Command {
$this->write = $this->option('write');
$this->dir = $this->option('dir');
$model = $this->argument('model');
$ignore = $this->option('ignore');
$this->reset = $this->option('reset');
//If filename is default and Write is not specified, ask what to do
if(!$this->write && $filename === $this->filename){
if(!$this->write && $filename === $this->filename && !$this->option('nowrite')){
if($this->confirm("Do you want to overwrite the existing model files for '$model'? Choose no to write to $filename instead? (Yes/No): ")){
$this->write = true;
}
}
$content = $this->generateDocs($model);
$content = $this->generateDocs($model, $ignore);
if(!$this->write){
$written = \File::put($filename, $content);
@@ -89,7 +90,6 @@ class ModelsCommand extends Command {
{
return array(
array('model', InputArgument::OPTIONAL, 'Which models to include', '*'),
);
}
@@ -104,11 +104,13 @@ class ModelsCommand extends Command {
array('filename', 'F', InputOption::VALUE_OPTIONAL, 'The path to the helper file', $this->filename),
array('dir', 'D', InputOption::VALUE_OPTIONAL, 'The model dir','app/models'),
array('write', 'W', InputOption::VALUE_NONE, 'Write to Model file'),
array('nowrite', 'N', InputOption::VALUE_NONE, 'Don\'t write to Model file'),
array('reset', 'R', InputOption::VALUE_NONE, 'Remove the original phpdocs instead of appending'),
array('ignore', 'I', InputOption::VALUE_OPTIONAL, 'Which models to ignore', ''),
);
}
protected function generateDocs($model){
protected function generateDocs($model, $ignore = ''){
$output = "<?php
@@ -127,7 +129,15 @@ class ModelsCommand extends Command {
$models = explode(',', $model);
}
$ignore = explode(',', $ignore);
foreach($models as $name){
if(in_array($name, $ignore)){
$this->comment("Ignoring model '$name'");
continue;
}else{
$this->comment("Loading model '$name'");
}
$this->properties = array();
$this->methods = array();
if(class_exists($name)){
+1
View File
@@ -41,6 +41,7 @@ return array(
'extra' => array(
'Eloquent' => array('Illuminate\Database\Eloquent\Builder', 'Illuminate\Database\Query\Builder'),
'Session' => array('Illuminate\Session\Store'),
),
'magic' => array(