680 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			680 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| use Illuminate\Support\Str;
 | |
| use Illuminate\Container\Container;
 | |
| 
 | |
| if ( ! function_exists('abort'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Throw an HttpException with the given data.
 | |
| 	 *
 | |
| 	 * @param  int     $code
 | |
| 	 * @param  string  $message
 | |
| 	 * @param  array   $headers
 | |
| 	 * @return void
 | |
| 	 *
 | |
| 	 * @throws \Symfony\Component\HttpKernel\Exception\HttpException
 | |
| 	 * @throws \Symfony\Component\HttpKernel\Exception\NotFoundHttpException
 | |
| 	 */
 | |
| 	function abort($code, $message = '', array $headers = array())
 | |
| 	{
 | |
| 		return app()->abort($code, $message, $headers);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('action'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Generate a URL to a controller action.
 | |
| 	 *
 | |
| 	 * @param  string  $name
 | |
| 	 * @param  array   $parameters
 | |
| 	 * @param  bool    $absolute
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function action($name, $parameters = array(), $absolute = true)
 | |
| 	{
 | |
| 		return app('url')->action($name, $parameters, $absolute);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('app'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the available container instance.
 | |
| 	 *
 | |
| 	 * @param  string  $make
 | |
| 	 * @param  array   $parameters
 | |
| 	 * @return mixed|\Illuminate\Foundation\Application
 | |
| 	 */
 | |
| 	function app($make = null, $parameters = [])
 | |
| 	{
 | |
| 		if (is_null($make)) return Container::getInstance();
 | |
| 
 | |
| 		return Container::getInstance()->make($make, $parameters);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('app_path'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the path to the application folder.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function app_path($path = '')
 | |
| 	{
 | |
| 		return app('path').($path ? '/'.$path : $path);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('asset'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Generate an asset path for the application.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @param  bool    $secure
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function asset($path, $secure = null)
 | |
| 	{
 | |
| 		return app('url')->asset($path, $secure);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('auth'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the available auth instance.
 | |
| 	 *
 | |
| 	 * @return \Illuminate\Contracts\Auth\Guard
 | |
| 	 */
 | |
| 	function auth()
 | |
| 	{
 | |
| 		return app('Illuminate\Contracts\Auth\Guard');
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('base_path'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the path to the base of the install.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function base_path($path = '')
 | |
| 	{
 | |
| 		return app()->basePath().($path ? '/'.$path : $path);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('back'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Create a new redirect response to the previous location.
 | |
| 	 *
 | |
| 	 * @param  int    $status
 | |
| 	 * @param  array  $headers
 | |
| 	 * @return \Illuminate\Http\RedirectResponse
 | |
| 	 */
 | |
| 	function back($status = 302, $headers = array())
 | |
| 	{
 | |
| 		return app('redirect')->back($status, $headers);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('bcrypt'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Hash the given value.
 | |
| 	 *
 | |
| 	 * @param  string  $value
 | |
| 	 * @param  array   $options
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function bcrypt($value, $options = array())
 | |
| 	{
 | |
| 		return app('hash')->make($value, $options);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('config'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get / set the specified configuration value.
 | |
| 	 *
 | |
| 	 * If an array is passed as the key, we will assume you want to set an array of values.
 | |
| 	 *
 | |
| 	 * @param  array|string  $key
 | |
| 	 * @param  mixed  $default
 | |
| 	 * @return mixed
 | |
| 	 */
 | |
| 	function config($key = null, $default = null)
 | |
| 	{
 | |
| 		if (is_null($key)) return app('config');
 | |
| 
 | |
| 		if (is_array($key))
 | |
| 		{
 | |
| 			return app('config')->set($key);
 | |
| 		}
 | |
| 
 | |
| 		return app('config')->get($key, $default);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('config_path'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the configuration path.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function config_path($path = '')
 | |
| 	{
 | |
| 		return app()->make('path.config').($path ? '/'.$path : $path);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('cookie'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Create a new cookie instance.
 | |
| 	 *
 | |
| 	 * @param  string  $name
 | |
| 	 * @param  string  $value
 | |
| 	 * @param  int     $minutes
 | |
| 	 * @param  string  $path
 | |
| 	 * @param  string  $domain
 | |
| 	 * @param  bool    $secure
 | |
| 	 * @param  bool    $httpOnly
 | |
| 	 * @return \Symfony\Component\HttpFoundation\Cookie
 | |
| 	 */
 | |
| 	function cookie($name = null, $value = null, $minutes = 0, $path = null, $domain = null, $secure = false, $httpOnly = true)
 | |
| 	{
 | |
| 		$cookie = app('Illuminate\Contracts\Cookie\Factory');
 | |
| 
 | |
| 		if (is_null($name))
 | |
| 		{
 | |
| 			return $cookie;
 | |
| 		}
 | |
| 
 | |
| 		return $cookie->make($name, $value, $minutes, $path, $domain, $secure, $httpOnly);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('csrf_token'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the CSRF token value.
 | |
| 	 *
 | |
| 	 * @return string
 | |
| 	 *
 | |
| 	 * @throws RuntimeException
 | |
| 	 */
 | |
| 	function csrf_token()
 | |
| 	{
 | |
| 		$session = app('session');
 | |
| 
 | |
| 		if (isset($session))
 | |
| 		{
 | |
| 			return $session->getToken();
 | |
| 		}
 | |
| 
 | |
| 		throw new RuntimeException("Application session store not set.");
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('database_path'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the database path.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function database_path($path = '')
 | |
| 	{
 | |
| 		return app()->databasePath().($path ? '/'.$path : $path);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('delete'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Register a new DELETE route with the router.
 | |
| 	 *
 | |
| 	 * @param  string  $uri
 | |
| 	 * @param  \Closure|array|string  $action
 | |
| 	 * @return \Illuminate\Routing\Route
 | |
| 	 */
 | |
| 	function delete($uri, $action)
 | |
| 	{
 | |
| 		return app('router')->delete($uri, $action);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('get'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Register a new GET route with the router.
 | |
| 	 *
 | |
| 	 * @param  string  $uri
 | |
| 	 * @param  \Closure|array|string  $action
 | |
| 	 * @return \Illuminate\Routing\Route
 | |
| 	 */
 | |
| 	function get($uri, $action)
 | |
| 	{
 | |
| 		return app('router')->get($uri, $action);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('info'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Write some information to the log.
 | |
| 	 *
 | |
| 	 * @param  string  $message
 | |
| 	 * @param  array   $context
 | |
| 	 * @return void
 | |
| 	 */
 | |
| 	function info($message, $context = array())
 | |
| 	{
 | |
| 		return app('log')->info($message, $context);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('logger'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Log a debug message to the logs.
 | |
| 	 *
 | |
| 	 * @param  string  $message
 | |
| 	 * @param  array  $context
 | |
| 	 * @return null|\Illuminate\Contracts\Logging\Log
 | |
| 	 */
 | |
| 	function logger($message = null, array $context = array())
 | |
| 	{
 | |
| 		if (is_null($message)) return app('log');
 | |
| 
 | |
| 		return app('log')->debug($message, $context);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('old'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Retrieve an old input item.
 | |
| 	 *
 | |
| 	 * @param  string  $key
 | |
| 	 * @param  mixed   $default
 | |
| 	 * @return mixed
 | |
| 	 */
 | |
| 	function old($key = null, $default = null)
 | |
| 	{
 | |
| 		return app('request')->old($key, $default);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('patch'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Register a new PATCH route with the router.
 | |
| 	 *
 | |
| 	 * @param  string  $uri
 | |
| 	 * @param  \Closure|array|string  $action
 | |
| 	 * @return \Illuminate\Routing\Route
 | |
| 	 */
 | |
| 	function patch($uri, $action)
 | |
| 	{
 | |
| 		return app('router')->patch($uri, $action);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('post'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Register a new POST route with the router.
 | |
| 	 *
 | |
| 	 * @param  string  $uri
 | |
| 	 * @param  \Closure|array|string  $action
 | |
| 	 * @return \Illuminate\Routing\Route
 | |
| 	 */
 | |
| 	function post($uri, $action)
 | |
| 	{
 | |
| 		return app('router')->post($uri, $action);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('put'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Register a new PUT route with the router.
 | |
| 	 *
 | |
| 	 * @param  string  $uri
 | |
| 	 * @param  \Closure|array|string  $action
 | |
| 	 * @return \Illuminate\Routing\Route
 | |
| 	 */
 | |
| 	function put($uri, $action)
 | |
| 	{
 | |
| 		return app('router')->put($uri, $action);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('public_path'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the path to the public folder.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function public_path($path = '')
 | |
| 	{
 | |
| 		return app()->make('path.public').($path ? '/'.$path : $path);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('redirect'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get an instance of the redirector.
 | |
| 	 *
 | |
| 	 * @param  string|null  $to
 | |
| 	 * @param  int     $status
 | |
| 	 * @param  array   $headers
 | |
| 	 * @param  bool    $secure
 | |
| 	 * @return \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse
 | |
| 	 */
 | |
| 	function redirect($to = null, $status = 302, $headers = array(), $secure = null)
 | |
| 	{
 | |
| 		if (is_null($to)) return app('redirect');
 | |
| 
 | |
| 		return app('redirect')->to($to, $status, $headers, $secure);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('resource'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Route a resource to a controller.
 | |
| 	 *
 | |
| 	 * @param  string  $name
 | |
| 	 * @param  string  $controller
 | |
| 	 * @param  array   $options
 | |
| 	 * @return void
 | |
| 	 */
 | |
| 	function resource($name, $controller, array $options = [])
 | |
| 	{
 | |
| 		return app('router')->resource($name, $controller, $options);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('response'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Return a new response from the application.
 | |
| 	 *
 | |
| 	 * @param  string  $content
 | |
| 	 * @param  int     $status
 | |
| 	 * @param  array   $headers
 | |
| 	 * @return \Symfony\Component\HttpFoundation\Response|\Illuminate\Contracts\Routing\ResponseFactory
 | |
| 	 */
 | |
| 	function response($content = '', $status = 200, array $headers = array())
 | |
| 	{
 | |
| 		$factory = app('Illuminate\Contracts\Routing\ResponseFactory');
 | |
| 
 | |
| 		if (func_num_args() === 0)
 | |
| 		{
 | |
| 			return $factory;
 | |
| 		}
 | |
| 
 | |
| 		return $factory->make($content, $status, $headers);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('route'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Generate a URL to a named route.
 | |
| 	 *
 | |
| 	 * @param  string  $name
 | |
| 	 * @param  array   $parameters
 | |
| 	 * @param  bool    $absolute
 | |
| 	 * @param  \Illuminate\Routing\Route  $route
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function route($name, $parameters = array(), $absolute = true, $route = null)
 | |
| 	{
 | |
| 		return app('url')->route($name, $parameters, $absolute, $route);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('secure_asset'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Generate an asset path for the application.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function secure_asset($path)
 | |
| 	{
 | |
| 		return asset($path, true);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('secure_url'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Generate a HTTPS url for the application.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @param  mixed   $parameters
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function secure_url($path, $parameters = array())
 | |
| 	{
 | |
| 		return url($path, $parameters, true);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('session'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get / set the specified session value.
 | |
| 	 *
 | |
| 	 * If an array is passed as the key, we will assume you want to set an array of values.
 | |
| 	 *
 | |
| 	 * @param  array|string  $key
 | |
| 	 * @param  mixed  $default
 | |
| 	 * @return mixed
 | |
| 	 */
 | |
| 	function session($key = null, $default = null)
 | |
| 	{
 | |
| 		if (is_null($key)) return app('session');
 | |
| 
 | |
| 		if (is_array($key)) return app('session')->put($key);
 | |
| 
 | |
| 		return app('session')->get($key, $default);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('storage_path'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the path to the storage folder.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function storage_path($path = '')
 | |
| 	{
 | |
| 		return app('path.storage').($path ? '/'.$path : $path);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('trans'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Translate the given message.
 | |
| 	 *
 | |
| 	 * @param  string  $id
 | |
| 	 * @param  array   $parameters
 | |
| 	 * @param  string  $domain
 | |
| 	 * @param  string  $locale
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function trans($id = null, $parameters = array(), $domain = 'messages', $locale = null)
 | |
| 	{
 | |
| 		if (is_null($id)) return app('translator');
 | |
| 
 | |
| 		return app('translator')->trans($id, $parameters, $domain, $locale);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('trans_choice'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Translates the given message based on a count.
 | |
| 	 *
 | |
| 	 * @param  string  $id
 | |
| 	 * @param  int     $number
 | |
| 	 * @param  array   $parameters
 | |
| 	 * @param  string  $domain
 | |
| 	 * @param  string  $locale
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function trans_choice($id, $number, array $parameters = array(), $domain = 'messages', $locale = null)
 | |
| 	{
 | |
| 		return app('translator')->transChoice($id, $number, $parameters, $domain, $locale);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('url'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Generate a url for the application.
 | |
| 	 *
 | |
| 	 * @param  string  $path
 | |
| 	 * @param  mixed   $parameters
 | |
| 	 * @param  bool    $secure
 | |
| 	 * @return string
 | |
| 	 */
 | |
| 	function url($path = null, $parameters = array(), $secure = null)
 | |
| 	{
 | |
| 		return app('Illuminate\Contracts\Routing\UrlGenerator')->to($path, $parameters, $secure);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('view'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Get the evaluated view contents for the given view.
 | |
| 	 *
 | |
| 	 * @param  string  $view
 | |
| 	 * @param  array   $data
 | |
| 	 * @param  array   $mergeData
 | |
| 	 * @return \Illuminate\View\View
 | |
| 	 */
 | |
| 	function view($view = null, $data = array(), $mergeData = array())
 | |
| 	{
 | |
| 		$factory = app('Illuminate\Contracts\View\Factory');
 | |
| 
 | |
| 		if (func_num_args() === 0)
 | |
| 		{
 | |
| 			return $factory;
 | |
| 		}
 | |
| 
 | |
| 		return $factory->make($view, $data, $mergeData);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('env'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Gets the value of an environment variable. Supports boolean, empty and null.
 | |
| 	 *
 | |
| 	 * @param  string  $key
 | |
| 	 * @param  mixed   $default
 | |
| 	 * @return mixed
 | |
| 	 */
 | |
| 	function env($key, $default = null)
 | |
| 	{
 | |
| 		$value = getenv($key);
 | |
| 
 | |
| 		if ($value === false) return value($default);
 | |
| 
 | |
| 		switch (strtolower($value))
 | |
| 		{
 | |
| 			case 'true':
 | |
| 			case '(true)':
 | |
| 				return true;
 | |
| 
 | |
| 			case 'false':
 | |
| 			case '(false)':
 | |
| 				return false;
 | |
| 
 | |
| 			case 'empty':
 | |
| 			case '(empty)':
 | |
| 				return '';
 | |
| 
 | |
| 			case 'null':
 | |
| 			case '(null)':
 | |
| 				return;
 | |
| 		}
 | |
| 
 | |
| 		if (Str::startsWith($value, '"') && Str::endsWith($value, '"'))
 | |
| 		{
 | |
| 			return substr($value, 1, -1);
 | |
| 		}
 | |
| 
 | |
| 		return $value;
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('event'))
 | |
| {
 | |
| 	/**
 | |
| 	 * Fire an event and call the listeners.
 | |
| 	 *
 | |
| 	 * @param  string  $event
 | |
| 	 * @param  mixed   $payload
 | |
| 	 * @param  bool    $halt
 | |
| 	 * @return array|null
 | |
| 	 */
 | |
| 	function event($event, $payload = array(), $halt = false)
 | |
| 	{
 | |
| 		return app('events')->fire($event, $payload, $halt);
 | |
| 	}
 | |
| }
 | |
| 
 | |
| if ( ! function_exists('elixir'))
 | |
| {
 | |
| 	/**
 | |
| 	* Get the path to a versioned Elixir file.
 | |
| 	*
 | |
| 	* @param  string  $file
 | |
| 	* @return string
 | |
| 	*/
 | |
| 	function elixir($file)
 | |
| 	{
 | |
| 		static $manifest = null;
 | |
| 
 | |
| 		if (is_null($manifest))
 | |
| 		{
 | |
| 			$manifest = json_decode(file_get_contents(public_path().'/build/rev-manifest.json'), true);
 | |
| 		}
 | |
| 
 | |
| 		if (isset($manifest[$file]))
 | |
| 		{
 | |
| 			return '/build/'.$manifest[$file];
 | |
| 		}
 | |
| 
 | |
| 		throw new InvalidArgumentException("File {$file} not defined in asset manifest.");
 | |
| 	}
 | |
| }
 | 
