Viewing file: CompilesConditionals.php (8.31 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Illuminate\View\Compilers\Concerns;
use Illuminate\Support\Str;
trait CompilesConditionals { /** * Identifier for the first case in the switch statement. * * @var bool */ protected $firstCaseInSwitch = true;
/** * Compile the if-auth statements into valid PHP. * * @param string|null $guard * @return string */ protected function compileAuth($guard = null) { $guard = is_null($guard) ? '()' : $guard;
return "<?php if(auth()->guard{$guard}->check()): ?>"; }
/** * Compile the else-auth statements into valid PHP. * * @param string|null $guard * @return string */ protected function compileElseAuth($guard = null) { $guard = is_null($guard) ? '()' : $guard;
return "<?php elseif(auth()->guard{$guard}->check()): ?>"; }
/** * Compile the end-auth statements into valid PHP. * * @return string */ protected function compileEndAuth() { return '<?php endif; ?>'; }
/** * Compile the env statements into valid PHP. * * @param string $environments * @return string */ protected function compileEnv($environments) { return "<?php if(app()->environment{$environments}): ?>"; }
/** * Compile the end-env statements into valid PHP. * * @return string */ protected function compileEndEnv() { return '<?php endif; ?>'; }
/** * Compile the production statements into valid PHP. * * @return string */ protected function compileProduction() { return "<?php if(app()->environment('production')): ?>"; }
/** * Compile the end-production statements into valid PHP. * * @return string */ protected function compileEndProduction() { return '<?php endif; ?>'; }
/** * Compile the if-guest statements into valid PHP. * * @param string|null $guard * @return string */ protected function compileGuest($guard = null) { $guard = is_null($guard) ? '()' : $guard;
return "<?php if(auth()->guard{$guard}->guest()): ?>"; }
/** * Compile the else-guest statements into valid PHP. * * @param string|null $guard * @return string */ protected function compileElseGuest($guard = null) { $guard = is_null($guard) ? '()' : $guard;
return "<?php elseif(auth()->guard{$guard}->guest()): ?>"; }
/** * Compile the end-guest statements into valid PHP. * * @return string */ protected function compileEndGuest() { return '<?php endif; ?>'; }
/** * Compile the has-section statements into valid PHP. * * @param string $expression * @return string */ protected function compileHasSection($expression) { return "<?php if (! empty(trim(\$__env->yieldContent{$expression}))): ?>"; }
/** * Compile the section-missing statements into valid PHP. * * @param string $expression * @return string */ protected function compileSectionMissing($expression) { return "<?php if (empty(trim(\$__env->yieldContent{$expression}))): ?>"; }
/** * Compile the if statements into valid PHP. * * @param string $expression * @return string */ protected function compileIf($expression) { return "<?php if{$expression}: ?>"; }
/** * Compile the unless statements into valid PHP. * * @param string $expression * @return string */ protected function compileUnless($expression) { return "<?php if (! {$expression}): ?>"; }
/** * Compile the else-if statements into valid PHP. * * @param string $expression * @return string */ protected function compileElseif($expression) { return "<?php elseif{$expression}: ?>"; }
/** * Compile the else statements into valid PHP. * * @return string */ protected function compileElse() { return '<?php else: ?>'; }
/** * Compile the end-if statements into valid PHP. * * @return string */ protected function compileEndif() { return '<?php endif; ?>'; }
/** * Compile the end-unless statements into valid PHP. * * @return string */ protected function compileEndunless() { return '<?php endif; ?>'; }
/** * Compile the if-isset statements into valid PHP. * * @param string $expression * @return string */ protected function compileIsset($expression) { return "<?php if(isset{$expression}): ?>"; }
/** * Compile the end-isset statements into valid PHP. * * @return string */ protected function compileEndIsset() { return '<?php endif; ?>'; }
/** * Compile the switch statements into valid PHP. * * @param string $expression * @return string */ protected function compileSwitch($expression) { $this->firstCaseInSwitch = true;
return "<?php switch{$expression}:"; }
/** * Compile the case statements into valid PHP. * * @param string $expression * @return string */ protected function compileCase($expression) { if ($this->firstCaseInSwitch) { $this->firstCaseInSwitch = false;
return "case {$expression}: ?>"; }
return "<?php case {$expression}: ?>"; }
/** * Compile the default statements in switch case into valid PHP. * * @return string */ protected function compileDefault() { return '<?php default: ?>'; }
/** * Compile the end switch statements into valid PHP. * * @return string */ protected function compileEndSwitch() { return '<?php endswitch; ?>'; }
/** * Compile a once block into valid PHP. * * @param string|null $id * @return string */ protected function compileOnce($id = null) { $id = $id ? $this->stripParentheses($id) : "'".(string) Str::uuid()."'";
return '<?php if (! $__env->hasRenderedOnce('.$id.')): $__env->markAsRenderedOnce('.$id.'); ?>'; }
/** * Compile an end-once block into valid PHP. * * @return string */ public function compileEndOnce() { return '<?php endif; ?>'; }
/** * Compile a selected block into valid PHP. * * @param string $condition * @return string */ protected function compileSelected($condition) { return "<?php if{$condition}: echo 'selected'; endif; ?>"; }
/** * Compile a checked block into valid PHP. * * @param string $condition * @return string */ protected function compileChecked($condition) { return "<?php if{$condition}: echo 'checked'; endif; ?>"; }
/** * Compile a disabled block into valid PHP. * * @param string $condition * @return string */ protected function compileDisabled($condition) { return "<?php if{$condition}: echo 'disabled'; endif; ?>"; }
/** * Compile a required block into valid PHP. * * @param string $condition * @return string */ protected function compileRequired($condition) { return "<?php if{$condition}: echo 'required'; endif; ?>"; }
/** * Compile a readonly block into valid PHP. * * @param string $condition * @return string */ protected function compileReadonly($condition) { return "<?php if{$condition}: echo 'readonly'; endif; ?>"; }
/** * Compile the push statements into valid PHP. * * @param string $expression * @return string */ protected function compilePushIf($expression) { $parts = explode(',', $this->stripParentheses($expression), 2);
return "<?php if({$parts[0]}): \$__env->startPush({$parts[1]}); ?>"; }
/** * Compile the end-push statements into valid PHP. * * @return string */ protected function compileEndPushIf() { return '<?php $__env->stopPush(); endif; ?>'; } }
|