张保健 před 4 roky
rodič
revize
ebdf0c22ad

+ 55 - 0
bootstrap/app.php Zobrazit soubor

@@ -0,0 +1,55 @@
1
+<?php
2
+
3
+/*
4
+|--------------------------------------------------------------------------
5
+| Create The Application
6
+|--------------------------------------------------------------------------
7
+|
8
+| The first thing we will do is create a new Laravel application instance
9
+| which serves as the "glue" for all the components of Laravel, and is
10
+| the IoC container for the system binding all of the various parts.
11
+|
12
+*/
13
+
14
+$app = new Illuminate\Foundation\Application(
15
+    realpath(__DIR__.'/../')
16
+);
17
+
18
+/*
19
+|--------------------------------------------------------------------------
20
+| Bind Important Interfaces
21
+|--------------------------------------------------------------------------
22
+|
23
+| Next, we need to bind some important interfaces into the container so
24
+| we will be able to resolve them when needed. The kernels serve the
25
+| incoming requests to this application from both the web and CLI.
26
+|
27
+*/
28
+
29
+$app->singleton(
30
+    Illuminate\Contracts\Http\Kernel::class,
31
+    App\Http\Kernel::class
32
+);
33
+
34
+$app->singleton(
35
+    Illuminate\Contracts\Console\Kernel::class,
36
+    App\Console\Kernel::class
37
+);
38
+
39
+$app->singleton(
40
+    Illuminate\Contracts\Debug\ExceptionHandler::class,
41
+    App\Exceptions\Handler::class
42
+);
43
+
44
+/*
45
+|--------------------------------------------------------------------------
46
+| Return The Application
47
+|--------------------------------------------------------------------------
48
+|
49
+| This script returns the application instance. The instance is given to
50
+| the calling script so we can separate the building of the instances
51
+| from the actual running of the application and sending responses.
52
+|
53
+*/
54
+
55
+return $app;

+ 2 - 0
bootstrap/cache/.gitignore Zobrazit soubor

@@ -0,0 +1,2 @@
1
+*
2
+!.gitignore

+ 16 - 0
config/agh.php Zobrazit soubor

@@ -0,0 +1,16 @@
1
+<?php
2
+/**
3
+ * Created by PhpStorm.
4
+ * User: guanxl
5
+ * Date: 2018/5/25
6
+ * Time: 10:20
7
+ */
8
+
9
+return [
10
+
11
+    "api_partner_id" => env("AGH_API_PARTNER_ID"),
12
+    "api_version" => env("AGH_API_VERSION"),
13
+    "api_key" => env("AGH_API_KEY"),
14
+    "api_url" => env("AGH_API_URL")
15
+
16
+];

+ 217 - 0
config/app.php Zobrazit soubor

@@ -0,0 +1,217 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Application Name
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | This value is the name of your application. This value is used when the
11
+    | framework needs to place the application's name in a notification or
12
+    | any other location as required by the application or its packages.
13
+    |
14
+    */
15
+
16
+    'name' => env('APP_NAME', 'Laravel'),
17
+
18
+    /*
19
+    |--------------------------------------------------------------------------
20
+    | Application Environment
21
+    |--------------------------------------------------------------------------
22
+    |
23
+    | This value determines the "environment" your application is currently
24
+    | running in. This may determine how you prefer to configure various
25
+    | services your application utilizes. Set this in your ".env" file.
26
+    |
27
+    */
28
+
29
+    'env' => env('APP_ENV', 'production'),
30
+
31
+    /*
32
+    |--------------------------------------------------------------------------
33
+    | Application Debug Mode
34
+    |--------------------------------------------------------------------------
35
+    |
36
+    | When your application is in debug mode, detailed error messages with
37
+    | stack traces will be shown on every error that occurs within your
38
+    | application. If disabled, a simple generic error page is shown.
39
+    |
40
+    */
41
+
42
+    'debug' => env('APP_DEBUG', false),
43
+
44
+    /*
45
+    |--------------------------------------------------------------------------
46
+    | Application URL
47
+    |--------------------------------------------------------------------------
48
+    |
49
+    | This URL is used by the console to properly generate URLs when using
50
+    | the Artisan command line tool. You should set this to the root of
51
+    | your application so that it is used when running Artisan tasks.
52
+    |
53
+    */
54
+
55
+    'url' => env('APP_URL', 'http://localhost'),
56
+
57
+    /*
58
+    |--------------------------------------------------------------------------
59
+    | Application Timezone
60
+    |--------------------------------------------------------------------------
61
+    |
62
+    | Here you may specify the default timezone for your application, which
63
+    | will be used by the PHP date and date-time functions. We have gone
64
+    | ahead and set this to a sensible default for you out of the box.
65
+    |
66
+    */
67
+
68
+    'timezone' => 'PRC',
69
+
70
+    /*
71
+    |--------------------------------------------------------------------------
72
+    | Application Locale Configuration
73
+    |--------------------------------------------------------------------------
74
+    |
75
+    | The application locale determines the default locale that will be used
76
+    | by the translation service provider. You are free to set this value
77
+    | to any of the locales which will be supported by the application.
78
+    |
79
+    */
80
+
81
+    'locale' => 'en',
82
+
83
+    /*
84
+    |--------------------------------------------------------------------------
85
+    | Application Fallback Locale
86
+    |--------------------------------------------------------------------------
87
+    |
88
+    | The fallback locale determines the locale to use when the current one
89
+    | is not available. You may change the value to correspond to any of
90
+    | the language folders that are provided through your application.
91
+    |
92
+    */
93
+
94
+    'fallback_locale' => 'zh_cn',
95
+
96
+    /*
97
+    |--------------------------------------------------------------------------
98
+    | Encryption Key
99
+    |--------------------------------------------------------------------------
100
+    |
101
+    | This key is used by the Illuminate encrypter service and should be set
102
+    | to a random, 32 character string, otherwise these encrypted strings
103
+    | will not be safe. Please do this before deploying an application!
104
+    |
105
+    */
106
+
107
+    'key' => env('APP_KEY'),
108
+
109
+    'cipher' => 'AES-256-CBC',
110
+
111
+    /*
112
+    |--------------------------------------------------------------------------
113
+    | Autoloaded Service Providers
114
+    |--------------------------------------------------------------------------
115
+    |
116
+    | The service providers listed here will be automatically loaded on the
117
+    | request to your application. Feel free to add your own services to
118
+    | this array to grant expanded functionality to your applications.
119
+    |
120
+    */
121
+
122
+    'providers' => [
123
+
124
+        /*
125
+         * Laravel Framework Service Providers...
126
+         */
127
+        Illuminate\Auth\AuthServiceProvider::class,
128
+        Illuminate\Broadcasting\BroadcastServiceProvider::class,
129
+        Illuminate\Bus\BusServiceProvider::class,
130
+        Illuminate\Cache\CacheServiceProvider::class,
131
+        Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class,
132
+        Illuminate\Cookie\CookieServiceProvider::class,
133
+        Illuminate\Database\DatabaseServiceProvider::class,
134
+        Illuminate\Encryption\EncryptionServiceProvider::class,
135
+        Illuminate\Filesystem\FilesystemServiceProvider::class,
136
+        Illuminate\Foundation\Providers\FoundationServiceProvider::class,
137
+        Illuminate\Hashing\HashServiceProvider::class,
138
+        Illuminate\Mail\MailServiceProvider::class,
139
+        Illuminate\Notifications\NotificationServiceProvider::class,
140
+        Illuminate\Pagination\PaginationServiceProvider::class,
141
+        Illuminate\Pipeline\PipelineServiceProvider::class,
142
+        Illuminate\Queue\QueueServiceProvider::class,
143
+        Illuminate\Redis\RedisServiceProvider::class,
144
+        Illuminate\Auth\Passwords\PasswordResetServiceProvider::class,
145
+        Illuminate\Session\SessionServiceProvider::class,
146
+        Illuminate\Translation\TranslationServiceProvider::class,
147
+        Illuminate\Validation\ValidationServiceProvider::class,
148
+        Illuminate\View\ViewServiceProvider::class,
149
+        Maatwebsite\Excel\ExcelServiceProvider::class,
150
+
151
+        /*
152
+         * Package Service Providers...
153
+         */
154
+
155
+        /*
156
+         * Application Service Providers...
157
+         */
158
+        App\Providers\AppServiceProvider::class,
159
+        App\Providers\AuthServiceProvider::class,
160
+        // App\Providers\BroadcastServiceProvider::class,
161
+        App\Providers\EventServiceProvider::class,
162
+        App\Providers\RouteServiceProvider::class,
163
+        Yansongda\LaravelPay\PayServiceProvider::class,
164
+
165
+    ],
166
+
167
+    /*
168
+    |--------------------------------------------------------------------------
169
+    | Class Aliases
170
+    |--------------------------------------------------------------------------
171
+    |
172
+    | This array of class aliases will be registered when this application
173
+    | is started. However, feel free to register as many as you wish as
174
+    | the aliases are "lazy" loaded so they don't hinder performance.
175
+    |
176
+    */
177
+
178
+    'aliases' => [
179
+
180
+        'App' => Illuminate\Support\Facades\App::class,
181
+        'Artisan' => Illuminate\Support\Facades\Artisan::class,
182
+        'Auth' => Illuminate\Support\Facades\Auth::class,
183
+        'Blade' => Illuminate\Support\Facades\Blade::class,
184
+        'Broadcast' => Illuminate\Support\Facades\Broadcast::class,
185
+        'Bus' => Illuminate\Support\Facades\Bus::class,
186
+        'Cache' => Illuminate\Support\Facades\Cache::class,
187
+        'Config' => Illuminate\Support\Facades\Config::class,
188
+        'Cookie' => Illuminate\Support\Facades\Cookie::class,
189
+        'Crypt' => Illuminate\Support\Facades\Crypt::class,
190
+        'DB' => Illuminate\Support\Facades\DB::class,
191
+        'Eloquent' => Illuminate\Database\Eloquent\Model::class,
192
+        'Event' => Illuminate\Support\Facades\Event::class,
193
+        'File' => Illuminate\Support\Facades\File::class,
194
+        'Gate' => Illuminate\Support\Facades\Gate::class,
195
+        'Hash' => Illuminate\Support\Facades\Hash::class,
196
+        'Lang' => Illuminate\Support\Facades\Lang::class,
197
+        'Log' => Illuminate\Support\Facades\Log::class,
198
+        'Mail' => Illuminate\Support\Facades\Mail::class,
199
+        'Notification' => Illuminate\Support\Facades\Notification::class,
200
+        'Password' => Illuminate\Support\Facades\Password::class,
201
+        'Queue' => Illuminate\Support\Facades\Queue::class,
202
+        'Redirect' => Illuminate\Support\Facades\Redirect::class,
203
+        'Redis' => Illuminate\Support\Facades\Redis::class,
204
+        'Request' => Illuminate\Support\Facades\Request::class,
205
+        'Response' => Illuminate\Support\Facades\Response::class,
206
+        'Route' => Illuminate\Support\Facades\Route::class,
207
+        'Schema' => Illuminate\Support\Facades\Schema::class,
208
+        'Session' => Illuminate\Support\Facades\Session::class,
209
+        'Storage' => Illuminate\Support\Facades\Storage::class,
210
+        'URL' => Illuminate\Support\Facades\URL::class,
211
+        'Validator' => Illuminate\Support\Facades\Validator::class,
212
+        'View' => Illuminate\Support\Facades\View::class,
213
+        'Excel' => Maatwebsite\Excel\Facades\Excel::class,
214
+        'Pay' => Yansongda\LaravelPay\Facades\Pay::class,
215
+
216
+    ],
217
+];

+ 102 - 0
config/auth.php Zobrazit soubor

@@ -0,0 +1,102 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Authentication Defaults
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | This option controls the default authentication "guard" and password
11
+    | reset options for your application. You may change these defaults
12
+    | as required, but they're a perfect start for most applications.
13
+    |
14
+    */
15
+
16
+    'defaults' => [
17
+        'guard' => 'web',
18
+        'passwords' => 'users',
19
+    ],
20
+
21
+    /*
22
+    |--------------------------------------------------------------------------
23
+    | Authentication Guards
24
+    |--------------------------------------------------------------------------
25
+    |
26
+    | Next, you may define every authentication guard for your application.
27
+    | Of course, a great default configuration has been defined for you
28
+    | here which uses session storage and the Eloquent user provider.
29
+    |
30
+    | All authentication drivers have a user provider. This defines how the
31
+    | users are actually retrieved out of your database or other storage
32
+    | mechanisms used by this application to persist your user's data.
33
+    |
34
+    | Supported: "session", "token"
35
+    |
36
+    */
37
+
38
+    'guards' => [
39
+        'web' => [
40
+            'driver' => 'session',
41
+            'provider' => 'users',
42
+        ],
43
+
44
+        'api' => [
45
+            'driver' => 'token',
46
+            'provider' => 'users',
47
+        ],
48
+    ],
49
+
50
+    /*
51
+    |--------------------------------------------------------------------------
52
+    | User Providers
53
+    |--------------------------------------------------------------------------
54
+    |
55
+    | All authentication drivers have a user provider. This defines how the
56
+    | users are actually retrieved out of your database or other storage
57
+    | mechanisms used by this application to persist your user's data.
58
+    |
59
+    | If you have multiple user tables or models you may configure multiple
60
+    | sources which represent each model / table. These sources may then
61
+    | be assigned to any extra authentication guards you have defined.
62
+    |
63
+    | Supported: "database", "eloquent"
64
+    |
65
+    */
66
+
67
+    'providers' => [
68
+        'users' => [
69
+            'driver' => 'eloquent',
70
+            'model' => App\User::class,
71
+        ],
72
+
73
+        // 'users' => [
74
+        //     'driver' => 'database',
75
+        //     'table' => 'users',
76
+        // ],
77
+    ],
78
+
79
+    /*
80
+    |--------------------------------------------------------------------------
81
+    | Resetting Passwords
82
+    |--------------------------------------------------------------------------
83
+    |
84
+    | You may specify multiple password reset configurations if you have more
85
+    | than one user table or model in the application and you want to have
86
+    | separate password reset settings based on the specific user types.
87
+    |
88
+    | The expire time is the number of minutes that the reset token should be
89
+    | considered valid. This security feature keeps tokens short-lived so
90
+    | they have less time to be guessed. You may change this as needed.
91
+    |
92
+    */
93
+
94
+    'passwords' => [
95
+        'users' => [
96
+            'provider' => 'users',
97
+            'table' => 'password_resets',
98
+            'expire' => 60,
99
+        ],
100
+    ],
101
+
102
+];

+ 59 - 0
config/broadcasting.php Zobrazit soubor

@@ -0,0 +1,59 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Default Broadcaster
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | This option controls the default broadcaster that will be used by the
11
+    | framework when an event needs to be broadcast. You may set this to
12
+    | any of the connections defined in the "connections" array below.
13
+    |
14
+    | Supported: "pusher", "redis", "log", "null"
15
+    |
16
+    */
17
+
18
+    'default' => env('BROADCAST_DRIVER', 'null'),
19
+
20
+    /*
21
+    |--------------------------------------------------------------------------
22
+    | Broadcast Connections
23
+    |--------------------------------------------------------------------------
24
+    |
25
+    | Here you may define all of the broadcast connections that will be used
26
+    | to broadcast events to other systems or over websockets. Samples of
27
+    | each available type of connection are provided inside this array.
28
+    |
29
+    */
30
+
31
+    'connections' => [
32
+
33
+        'pusher' => [
34
+            'driver' => 'pusher',
35
+            'key' => env('PUSHER_APP_KEY'),
36
+            'secret' => env('PUSHER_APP_SECRET'),
37
+            'app_id' => env('PUSHER_APP_ID'),
38
+            'options' => [
39
+                'cluster' => env('PUSHER_APP_CLUSTER'),
40
+                'encrypted' => true,
41
+            ],
42
+        ],
43
+
44
+        'redis' => [
45
+            'driver' => 'redis',
46
+            'connection' => 'default',
47
+        ],
48
+
49
+        'log' => [
50
+            'driver' => 'log',
51
+        ],
52
+
53
+        'null' => [
54
+            'driver' => 'null',
55
+        ],
56
+
57
+    ],
58
+
59
+];

+ 94 - 0
config/cache.php Zobrazit soubor

@@ -0,0 +1,94 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Default Cache Store
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | This option controls the default cache connection that gets used while
11
+    | using this caching library. This connection is used when another is
12
+    | not explicitly specified when executing a given caching function.
13
+    |
14
+    | Supported: "apc", "array", "database", "file", "memcached", "redis"
15
+    |
16
+    */
17
+
18
+    'default' => env('CACHE_DRIVER', 'file'),
19
+
20
+    /*
21
+    |--------------------------------------------------------------------------
22
+    | Cache Stores
23
+    |--------------------------------------------------------------------------
24
+    |
25
+    | Here you may define all of the cache "stores" for your application as
26
+    | well as their drivers. You may even define multiple stores for the
27
+    | same cache driver to group types of items stored in your caches.
28
+    |
29
+    */
30
+
31
+    'stores' => [
32
+
33
+        'apc' => [
34
+            'driver' => 'apc',
35
+        ],
36
+
37
+        'array' => [
38
+            'driver' => 'array',
39
+        ],
40
+
41
+        'database' => [
42
+            'driver' => 'database',
43
+            'table' => 'cache',
44
+            'connection' => null,
45
+        ],
46
+
47
+        'file' => [
48
+            'driver' => 'file',
49
+            'path' => storage_path('framework/cache/data'),
50
+        ],
51
+
52
+        'memcached' => [
53
+            'driver' => 'memcached',
54
+            'persistent_id' => env('MEMCACHED_PERSISTENT_ID'),
55
+            'sasl' => [
56
+                env('MEMCACHED_USERNAME'),
57
+                env('MEMCACHED_PASSWORD'),
58
+            ],
59
+            'options' => [
60
+                // Memcached::OPT_CONNECT_TIMEOUT  => 2000,
61
+            ],
62
+            'servers' => [
63
+                [
64
+                    'host' => env('MEMCACHED_HOST', '127.0.0.1'),
65
+                    'port' => env('MEMCACHED_PORT', 11211),
66
+                    'weight' => 100,
67
+                ],
68
+            ],
69
+        ],
70
+
71
+        'redis' => [
72
+            'driver' => 'redis',
73
+            'connection' => 'default',
74
+        ],
75
+
76
+    ],
77
+
78
+    /*
79
+    |--------------------------------------------------------------------------
80
+    | Cache Key Prefix
81
+    |--------------------------------------------------------------------------
82
+    |
83
+    | When utilizing a RAM based store such as APC or Memcached, there might
84
+    | be other applications utilizing the same cache. So, we'll specify a
85
+    | value to get prefixed to all our keys so we can avoid collisions.
86
+    |
87
+    */
88
+
89
+    'prefix' => env(
90
+        'CACHE_PREFIX',
91
+        str_slug(env('APP_NAME', 'laravel'), '_').'_cache'
92
+    ),
93
+
94
+];

+ 22 - 0
config/code.php Zobrazit soubor

@@ -0,0 +1,22 @@
1
+<?php
2
+/**
3
+ *  20180519
4
+ *  code配置文件
5
+ */
6
+return [
7
+    'service_error'         => '500',             //系统错误
8
+    'success'               => '0',               //请求成功
9
+    'fail'                  => '1',               //请求失败
10
+    'params_error'          => '1001',            //参数错误
11
+    'sql_error'             => '1002',            //sql错误
12
+    'unknow_error'          => '1003',            //未知错误
13
+    'activity_not_exist'    => '1004',            //活动不存在
14
+    'category_not_exist'    => '1005',            //题库不存在
15
+    'question_not_exist'    => '1006',            //题目不存在
16
+    'upload_fail'           => '1007',            //上传失败
17
+    'prize_not_exist'       => '1008',            //奖品不存在
18
+    'user_not_exist'        => '1009',            //用户不存在
19
+    'corp_not_wesuit'       => '1010',            //企业未开通企业微信
20
+    'login_timeout'         => '9999',            //登录超时
21
+];
22
+?>

+ 120 - 0
config/database.php Zobrazit soubor

@@ -0,0 +1,120 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Default Database Connection Name
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | Here you may specify which of the database connections below you wish
11
+    | to use as your default connection for all database work. Of course
12
+    | you may use many connections at once using the Database library.
13
+    |
14
+    */
15
+
16
+    'default' => env('DB_CONNECTION', 'mysql'),
17
+
18
+    /*
19
+    |--------------------------------------------------------------------------
20
+    | Database Connections
21
+    |--------------------------------------------------------------------------
22
+    |
23
+    | Here are each of the database connections setup for your application.
24
+    | Of course, examples of configuring each database platform that is
25
+    | supported by Laravel is shown below to make development simple.
26
+    |
27
+    |
28
+    | All database work in Laravel is done through the PHP PDO facilities
29
+    | so make sure you have the driver for your particular database of
30
+    | choice installed on your machine before you begin development.
31
+    |
32
+    */
33
+
34
+    'connections' => [
35
+
36
+        'sqlite' => [
37
+            'driver' => 'sqlite',
38
+            'database' => env('DB_DATABASE', database_path('database.sqlite')),
39
+            'prefix' => '',
40
+        ],
41
+
42
+        'mysql' => [
43
+            'driver' => 'mysql',
44
+            'host' => env('DB_HOST'),
45
+            'port' => env('DB_PORT'),
46
+            'database' => env('DB_DATABASE'),
47
+            'username' => env('DB_USERNAME'),
48
+            'password' => env('DB_PASSWORD'),
49
+            'unix_socket' => env('DB_SOCKET'),
50
+            'charset' => 'utf8mb4',
51
+            'collation' => 'utf8mb4_unicode_ci',
52
+            'prefix' => '',
53
+            'strict' => false,
54
+            'engine' => null,
55
+        ],
56
+
57
+        'pgsql' => [
58
+            'driver' => 'pgsql',
59
+            'host' => env('DB_HOST', '127.0.0.1'),
60
+            'port' => env('DB_PORT', '5432'),
61
+            'database' => env('DB_DATABASE', 'forge'),
62
+            'username' => env('DB_USERNAME', 'forge'),
63
+            'password' => env('DB_PASSWORD', ''),
64
+            'charset' => 'utf8',
65
+            'prefix' => '',
66
+            'schema' => 'public',
67
+            'sslmode' => 'prefer',
68
+        ],
69
+
70
+        'sqlsrv' => [
71
+            'driver' => 'sqlsrv',
72
+            'host' => env('DB_HOST', 'localhost'),
73
+            'port' => env('DB_PORT', '1433'),
74
+            'database' => env('DB_DATABASE', 'forge'),
75
+            'username' => env('DB_USERNAME', 'forge'),
76
+            'password' => env('DB_PASSWORD', ''),
77
+            'charset' => 'utf8',
78
+            'prefix' => '',
79
+        ],
80
+
81
+    ],
82
+
83
+    /*
84
+    |--------------------------------------------------------------------------
85
+    | Migration Repository Table
86
+    |--------------------------------------------------------------------------
87
+    |
88
+    | This table keeps track of all the migrations that have already run for
89
+    | your application. Using this information, we can determine which of
90
+    | the migrations on disk haven't actually been run in the database.
91
+    |
92
+    */
93
+
94
+    'migrations' => 'migrations',
95
+
96
+    /*
97
+    |--------------------------------------------------------------------------
98
+    | Redis Databases
99
+    |--------------------------------------------------------------------------
100
+    |
101
+    | Redis is an open source, fast, and advanced key-value store that also
102
+    | provides a richer set of commands than a typical key-value systems
103
+    | such as APC or Memcached. Laravel makes it easy to dig right in.
104
+    |
105
+    */
106
+
107
+    'redis' => [
108
+
109
+        'client' => 'predis',
110
+
111
+        'default' => [
112
+            'host' => env('REDIS_HOST', '127.0.0.1'),
113
+            'password' => env('REDIS_PASSWORD', null),
114
+            'port' => env('REDIS_PORT', 6379),
115
+            'database' => env("REDIS_DATABASE"),
116
+        ],
117
+
118
+    ],
119
+
120
+];

+ 704 - 0
config/excel.php Zobrazit soubor

@@ -0,0 +1,704 @@
1
+<?php
2
+
3
+return array(
4
+
5
+    'cache'      => [
6
+
7
+        /*
8
+        |--------------------------------------------------------------------------
9
+        | Enable/Disable cell caching
10
+        |--------------------------------------------------------------------------
11
+        */
12
+        'enable'   => true,
13
+
14
+        /*
15
+        |--------------------------------------------------------------------------
16
+        | Caching driver
17
+        |--------------------------------------------------------------------------
18
+        |
19
+        | Set the caching driver
20
+        |
21
+        | Available methods:
22
+        | memory|gzip|serialized|igbinary|discISAM|apc|memcache|temp|wincache|sqlite|sqlite3
23
+        |
24
+        */
25
+        'driver'   => 'memory',
26
+
27
+        /*
28
+        |--------------------------------------------------------------------------
29
+        | Cache settings
30
+        |--------------------------------------------------------------------------
31
+        */
32
+        'settings' => [
33
+
34
+            'memoryCacheSize' => '32MB',
35
+            'cacheTime'       => 600
36
+
37
+        ],
38
+
39
+        /*
40
+        |--------------------------------------------------------------------------
41
+        | Memcache settings
42
+        |--------------------------------------------------------------------------
43
+        */
44
+        'memcache' => [
45
+
46
+            'host' => 'localhost',
47
+            'port' => 11211,
48
+
49
+        ],
50
+
51
+        /*
52
+        |--------------------------------------------------------------------------
53
+        | Cache dir (for discISAM)
54
+        |--------------------------------------------------------------------------
55
+        */
56
+
57
+        'dir'      => storage_path('cache')
58
+    ],
59
+
60
+    'properties' => [
61
+        'creator'        => 'Maatwebsite',
62
+        'lastModifiedBy' => 'Maatwebsite',
63
+        'title'          => 'Spreadsheet',
64
+        'description'    => 'Default spreadsheet export',
65
+        'subject'        => 'Spreadsheet export',
66
+        'keywords'       => 'maatwebsite, excel, export',
67
+        'category'       => 'Excel',
68
+        'manager'        => 'Maatwebsite',
69
+        'company'        => 'Maatwebsite',
70
+    ],
71
+
72
+    /*
73
+    |--------------------------------------------------------------------------
74
+    | Sheets settings
75
+    |--------------------------------------------------------------------------
76
+    */
77
+    'sheets'     => [
78
+
79
+        /*
80
+        |--------------------------------------------------------------------------
81
+        | Default page setup
82
+        |--------------------------------------------------------------------------
83
+        */
84
+        'pageSetup' => [
85
+            'orientation'           => 'portrait',
86
+            'paperSize'             => '9',
87
+            'scale'                 => '100',
88
+            'fitToPage'             => false,
89
+            'fitToHeight'           => true,
90
+            'fitToWidth'            => true,
91
+            'columnsToRepeatAtLeft' => ['', ''],
92
+            'rowsToRepeatAtTop'     => [0, 0],
93
+            'horizontalCentered'    => false,
94
+            'verticalCentered'      => false,
95
+            'printArea'             => null,
96
+            'firstPageNumber'       => null,
97
+        ],
98
+    ],
99
+
100
+    /*
101
+    |--------------------------------------------------------------------------
102
+    | Creator
103
+    |--------------------------------------------------------------------------
104
+    |
105
+    | The default creator of a new Excel file
106
+    |
107
+    */
108
+
109
+    'creator'    => 'Maatwebsite',
110
+
111
+    'csv'        => [
112
+        /*
113
+       |--------------------------------------------------------------------------
114
+       | Delimiter
115
+       |--------------------------------------------------------------------------
116
+       |
117
+       | The default delimiter which will be used to read out a CSV file
118
+       |
119
+       */
120
+
121
+        'delimiter'   => ',',
122
+
123
+        /*
124
+        |--------------------------------------------------------------------------
125
+        | Enclosure
126
+        |--------------------------------------------------------------------------
127
+        */
128
+
129
+        'enclosure'   => '"',
130
+
131
+        /*
132
+        |--------------------------------------------------------------------------
133
+        | Line endings
134
+        |--------------------------------------------------------------------------
135
+        */
136
+
137
+        'line_ending' => "\r\n",
138
+
139
+        /*
140
+        |--------------------------------------------------------------------------
141
+        | setUseBom
142
+        |--------------------------------------------------------------------------
143
+        */
144
+
145
+        'use_bom' => false
146
+    ],
147
+
148
+    'export'     => [
149
+
150
+        /*
151
+        |--------------------------------------------------------------------------
152
+        | Autosize columns
153
+        |--------------------------------------------------------------------------
154
+        |
155
+        | Disable/enable column autosize or set the autosizing for
156
+        | an array of columns ( array('A', 'B') )
157
+        |
158
+        */
159
+        'autosize'                    => true,
160
+
161
+        /*
162
+        |--------------------------------------------------------------------------
163
+        | Autosize method
164
+        |--------------------------------------------------------------------------
165
+        |
166
+        | --> PHPExcel_Shared_Font::AUTOSIZE_METHOD_APPROX
167
+        | The default is based on an estimate, which does its calculation based
168
+        | on the number of characters in the cell value (applying any calculation
169
+        | and format mask, and allowing for wordwrap and rotation) and with an
170
+        | "arbitrary" adjustment based on the font (Arial, Calibri or Verdana,
171
+        | defaulting to Calibri if any other font is used) and a proportional
172
+        | adjustment for the font size.
173
+        |
174
+        | --> PHPExcel_Shared_Font::AUTOSIZE_METHOD_EXACT
175
+        | The second method is more accurate, based on actual style formatting as
176
+        | well (bold, italic, etc), and is calculated by generating a gd2 imagettf
177
+        | bounding box and using its dimensions to determine the size; but this
178
+        | method is significantly slower, and its accuracy is still dependent on
179
+        | having the appropriate fonts installed.
180
+        |
181
+        */
182
+        'autosize-method'             => PHPExcel_Shared_Font::AUTOSIZE_METHOD_APPROX,
183
+
184
+        /*
185
+        |--------------------------------------------------------------------------
186
+        | Auto generate table heading
187
+        |--------------------------------------------------------------------------
188
+        |
189
+        | If set to true, the array indices (or model attribute names)
190
+        | will automatically be used as first row (table heading)
191
+        |
192
+        */
193
+        'generate_heading_by_indices' => true,
194
+
195
+        /*
196
+        |--------------------------------------------------------------------------
197
+        | Auto set alignment on merged cells
198
+        |--------------------------------------------------------------------------
199
+        */
200
+        'merged_cell_alignment'       => 'left',
201
+
202
+        /*
203
+        |--------------------------------------------------------------------------
204
+        | Pre-calculate formulas during export
205
+        |--------------------------------------------------------------------------
206
+        */
207
+        'calculate'                   => false,
208
+
209
+        /*
210
+        |--------------------------------------------------------------------------
211
+        | Include Charts during export
212
+        |--------------------------------------------------------------------------
213
+        */
214
+        'includeCharts'               => false,
215
+
216
+        /*
217
+        |--------------------------------------------------------------------------
218
+        | Default sheet settings
219
+        |--------------------------------------------------------------------------
220
+        */
221
+        'sheets'                      => [
222
+
223
+            /*
224
+            |--------------------------------------------------------------------------
225
+            | Default page margin
226
+            |--------------------------------------------------------------------------
227
+            |
228
+            | 1) When set to false, default margins will be used
229
+            | 2) It's possible to enter a single margin which will
230
+            |    be used for all margins.
231
+            | 3) Alternatively you can pass an array with 4 margins
232
+            |    Default order: array(top, right, bottom, left)
233
+            |
234
+            */
235
+            'page_margin'          => false,
236
+
237
+            /*
238
+            |--------------------------------------------------------------------------
239
+            | Value in source array that stands for blank cell
240
+            |--------------------------------------------------------------------------
241
+            */
242
+            'nullValue'            => null,
243
+
244
+            /*
245
+            |--------------------------------------------------------------------------
246
+            | Insert array starting from this cell address as the top left coordinate
247
+            |--------------------------------------------------------------------------
248
+            */
249
+            'startCell'            => 'A1',
250
+
251
+            /*
252
+            |--------------------------------------------------------------------------
253
+            | Apply strict comparison when testing for null values in the array
254
+            |--------------------------------------------------------------------------
255
+            */
256
+            'strictNullComparison' => false
257
+        ],
258
+
259
+        /*
260
+        |--------------------------------------------------------------------------
261
+        | Store settings
262
+        |--------------------------------------------------------------------------
263
+        */
264
+
265
+        'store'                       => [
266
+
267
+            /*
268
+            |--------------------------------------------------------------------------
269
+            | Path
270
+            |--------------------------------------------------------------------------
271
+            |
272
+            | The path we want to save excel file to
273
+            |
274
+            */
275
+            'path'       => storage_path('exports'),
276
+
277
+            /*
278
+            |--------------------------------------------------------------------------
279
+            | Return info
280
+            |--------------------------------------------------------------------------
281
+            |
282
+            | Whether we want to return information about the stored file or not
283
+            |
284
+            */
285
+            'returnInfo' => false
286
+
287
+        ],
288
+
289
+        /*
290
+        |--------------------------------------------------------------------------
291
+        | PDF Settings
292
+        |--------------------------------------------------------------------------
293
+        */
294
+        'pdf'                         => [
295
+
296
+            /*
297
+            |--------------------------------------------------------------------------
298
+            | PDF Drivers
299
+            |--------------------------------------------------------------------------
300
+            | Supported: DomPDF, tcPDF, mPDF
301
+            */
302
+            'driver'  => 'DomPDF',
303
+
304
+            /*
305
+            |--------------------------------------------------------------------------
306
+            | PDF Driver settings
307
+            |--------------------------------------------------------------------------
308
+            */
309
+            'drivers' => [
310
+
311
+                /*
312
+                |--------------------------------------------------------------------------
313
+                | DomPDF settings
314
+                |--------------------------------------------------------------------------
315
+                */
316
+                'DomPDF' => [
317
+                    'path' => base_path('vendor/dompdf/dompdf/')
318
+                ],
319
+
320
+                /*
321
+                |--------------------------------------------------------------------------
322
+                | tcPDF settings
323
+                |--------------------------------------------------------------------------
324
+                */
325
+                'tcPDF'  => [
326
+                    'path' => base_path('vendor/tecnick.com/tcpdf/')
327
+                ],
328
+
329
+                /*
330
+                |--------------------------------------------------------------------------
331
+                | mPDF settings
332
+                |--------------------------------------------------------------------------
333
+                */
334
+                'mPDF'   => [
335
+                    'path' => base_path('vendor/mpdf/mpdf/')
336
+                ],
337
+            ]
338
+        ]
339
+    ],
340
+
341
+    'filters'    => [
342
+        /*
343
+        |--------------------------------------------------------------------------
344
+        | Register read filters
345
+        |--------------------------------------------------------------------------
346
+        */
347
+
348
+        'registered' => [
349
+            'chunk' => 'Maatwebsite\Excel\Filters\ChunkReadFilter'
350
+        ],
351
+
352
+        /*
353
+        |--------------------------------------------------------------------------
354
+        | Enable certain filters for every file read
355
+        |--------------------------------------------------------------------------
356
+        */
357
+
358
+        'enabled'    => []
359
+    ],
360
+
361
+    'import'     => [
362
+
363
+        /*
364
+        |--------------------------------------------------------------------------
365
+        | Has heading
366
+        |--------------------------------------------------------------------------
367
+        |
368
+        | The sheet has a heading (first) row which we can use as attribute names
369
+        |
370
+        | Options: true|false|slugged|slugged_with_count|ascii|numeric|hashed|hashed_with_lower|trans|original
371
+        |
372
+        */
373
+
374
+        'heading'                 => 'slugged',
375
+
376
+        /*
377
+        |--------------------------------------------------------------------------
378
+        | First Row with data or heading of data
379
+        |--------------------------------------------------------------------------
380
+        |
381
+        | If the heading row is not the first row, or the data doesn't start
382
+        | on the first row, here you can change the start row.
383
+        |
384
+        */
385
+
386
+        'startRow'                => 1,
387
+
388
+        /*
389
+        |--------------------------------------------------------------------------
390
+        | Cell name word separator
391
+        |--------------------------------------------------------------------------
392
+        |
393
+        | The default separator which is used for the cell names
394
+        | Note: only applies to 'heading' settings 'true' && 'slugged'
395
+        |
396
+        */
397
+
398
+        'separator'               => '_',
399
+
400
+        /*
401
+        |--------------------------------------------------------------------------
402
+        | Slug whitelisting
403
+        |--------------------------------------------------------------------------
404
+        |
405
+        | Here you can whitelist certain characters in the slug.
406
+        | E.g. user.last_name will not remove . and _
407
+        | Note: only applies to 'heading' settings 'true' && 'slugged'
408
+        |
409
+        */
410
+
411
+        'slug_whitelist'       => '._',
412
+
413
+        /*
414
+        |--------------------------------------------------------------------------
415
+        | Include Charts during import
416
+        |--------------------------------------------------------------------------
417
+        */
418
+
419
+        'includeCharts'           => false,
420
+
421
+        /*
422
+        |--------------------------------------------------------------------------
423
+        | Sheet heading conversion
424
+        |--------------------------------------------------------------------------
425
+        |
426
+        | Convert headings to ASCII
427
+        | Note: only applies to 'heading' settings 'true' && 'slugged'
428
+        |
429
+        */
430
+
431
+        'to_ascii'                => true,
432
+
433
+        /*
434
+        |--------------------------------------------------------------------------
435
+        | Import encoding
436
+        |--------------------------------------------------------------------------
437
+        */
438
+
439
+        'encoding'                => [
440
+
441
+            'input'  => 'UTF-8',
442
+            'output' => 'UTF-8'
443
+
444
+        ],
445
+
446
+        /*
447
+        |--------------------------------------------------------------------------
448
+        | Calculate
449
+        |--------------------------------------------------------------------------
450
+        |
451
+        | By default cells with formulas will be calculated.
452
+        |
453
+        */
454
+
455
+        'calculate'               => true,
456
+
457
+        /*
458
+        |--------------------------------------------------------------------------
459
+        | Ignore empty cells
460
+        |--------------------------------------------------------------------------
461
+        |
462
+        | By default empty cells are not ignored
463
+        |
464
+        */
465
+
466
+        'ignoreEmpty'             => false,
467
+
468
+        /*
469
+        |--------------------------------------------------------------------------
470
+        | Force sheet collection
471
+        |--------------------------------------------------------------------------
472
+        |
473
+        | For a sheet collection even when there is only 1 sheets.
474
+        | When set to false and only 1 sheet found, the parsed file will return
475
+        | a row collection instead of a sheet collection.
476
+        | When set to true, it will return a sheet collection instead.
477
+        |
478
+        */
479
+        'force_sheets_collection' => false,
480
+
481
+        /*
482
+        |--------------------------------------------------------------------------
483
+        | Date format
484
+        |--------------------------------------------------------------------------
485
+        |
486
+        | The format dates will be parsed to
487
+        |
488
+        */
489
+
490
+        'dates'                   => [
491
+
492
+            /*
493
+            |--------------------------------------------------------------------------
494
+            | Enable/disable date formatting
495
+            |--------------------------------------------------------------------------
496
+            */
497
+            'enabled' => true,
498
+
499
+            /*
500
+            |--------------------------------------------------------------------------
501
+            | Default date format
502
+            |--------------------------------------------------------------------------
503
+            |
504
+            | If set to false, a carbon object will return
505
+            |
506
+            */
507
+            'format'  => false,
508
+
509
+            /*
510
+            |--------------------------------------------------------------------------
511
+            | Date columns
512
+            |--------------------------------------------------------------------------
513
+            */
514
+            'columns' => []
515
+        ],
516
+
517
+        /*
518
+        |--------------------------------------------------------------------------
519
+        | Import sheets by config
520
+        |--------------------------------------------------------------------------
521
+        */
522
+        'sheets'                  => [
523
+
524
+            /*
525
+            |--------------------------------------------------------------------------
526
+            | Example sheet
527
+            |--------------------------------------------------------------------------
528
+            |
529
+            | Example sheet "test" will grab the firstname at cell A2
530
+            |
531
+            */
532
+
533
+            'test' => [
534
+
535
+                'firstname' => 'A2'
536
+
537
+            ]
538
+
539
+        ]
540
+    ],
541
+
542
+    'views'      => [
543
+
544
+        /*
545
+        |--------------------------------------------------------------------------
546
+        | Styles
547
+        |--------------------------------------------------------------------------
548
+        |
549
+        | The default styles which will be used when parsing a view
550
+        |
551
+        */
552
+
553
+        'styles' => [
554
+
555
+            /*
556
+            |--------------------------------------------------------------------------
557
+            | Table headings
558
+            |--------------------------------------------------------------------------
559
+            */
560
+            'th'     => [
561
+                'font' => [
562
+                    'bold' => true,
563
+                    'size' => 12,
564
+                ]
565
+            ],
566
+
567
+            /*
568
+            |--------------------------------------------------------------------------
569
+            | Strong tags
570
+            |--------------------------------------------------------------------------
571
+            */
572
+            'strong' => [
573
+                'font' => [
574
+                    'bold' => true,
575
+                    'size' => 12,
576
+                ]
577
+            ],
578
+
579
+            /*
580
+            |--------------------------------------------------------------------------
581
+            | Bold tags
582
+            |--------------------------------------------------------------------------
583
+            */
584
+            'b'      => [
585
+                'font' => [
586
+                    'bold' => true,
587
+                    'size' => 12,
588
+                ]
589
+            ],
590
+
591
+            /*
592
+            |--------------------------------------------------------------------------
593
+            | Italic tags
594
+            |--------------------------------------------------------------------------
595
+            */
596
+            'i'      => [
597
+                'font' => [
598
+                    'italic' => true,
599
+                    'size'   => 12,
600
+                ]
601
+            ],
602
+
603
+            /*
604
+            |--------------------------------------------------------------------------
605
+            | Heading 1
606
+            |--------------------------------------------------------------------------
607
+            */
608
+            'h1'     => [
609
+                'font' => [
610
+                    'bold' => true,
611
+                    'size' => 24,
612
+                ]
613
+            ],
614
+
615
+            /*
616
+            |--------------------------------------------------------------------------
617
+            | Heading 2
618
+            |--------------------------------------------------------------------------
619
+            */
620
+            'h2'     => [
621
+                'font' => [
622
+                    'bold' => true,
623
+                    'size' => 18,
624
+                ]
625
+            ],
626
+
627
+            /*
628
+            |--------------------------------------------------------------------------
629
+            | Heading 3
630
+            |--------------------------------------------------------------------------
631
+            */
632
+            'h3'     => [
633
+                'font' => [
634
+                    'bold' => true,
635
+                    'size' => 13.5,
636
+                ]
637
+            ],
638
+
639
+            /*
640
+             |--------------------------------------------------------------------------
641
+             | Heading 4
642
+             |--------------------------------------------------------------------------
643
+             */
644
+            'h4'     => [
645
+                'font' => [
646
+                    'bold' => true,
647
+                    'size' => 12,
648
+                ]
649
+            ],
650
+
651
+            /*
652
+             |--------------------------------------------------------------------------
653
+             | Heading 5
654
+             |--------------------------------------------------------------------------
655
+             */
656
+            'h5'     => [
657
+                'font' => [
658
+                    'bold' => true,
659
+                    'size' => 10,
660
+                ]
661
+            ],
662
+
663
+            /*
664
+             |--------------------------------------------------------------------------
665
+             | Heading 6
666
+             |--------------------------------------------------------------------------
667
+             */
668
+            'h6'     => [
669
+                'font' => [
670
+                    'bold' => true,
671
+                    'size' => 7.5,
672
+                ]
673
+            ],
674
+
675
+            /*
676
+             |--------------------------------------------------------------------------
677
+             | Hyperlinks
678
+             |--------------------------------------------------------------------------
679
+             */
680
+            'a'      => [
681
+                'font' => [
682
+                    'underline' => true,
683
+                    'color'     => ['argb' => 'FF0000FF'],
684
+                ]
685
+            ],
686
+
687
+            /*
688
+             |--------------------------------------------------------------------------
689
+             | Horizontal rules
690
+             |--------------------------------------------------------------------------
691
+             */
692
+            'hr'     => [
693
+                'borders' => [
694
+                    'bottom' => [
695
+                        'style' => 'thin',
696
+                        'color' => ['FF000000']
697
+                    ],
698
+                ]
699
+            ]
700
+        ]
701
+
702
+    ]
703
+
704
+);

+ 69 - 0
config/filesystems.php Zobrazit soubor

@@ -0,0 +1,69 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Default Filesystem Disk
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | Here you may specify the default filesystem disk that should be used
11
+    | by the framework. The "local" disk, as well as a variety of cloud
12
+    | based disks are available to your application. Just store away!
13
+    |
14
+    */
15
+
16
+    'default' => env('FILESYSTEM_DRIVER', 'local'),
17
+
18
+    /*
19
+    |--------------------------------------------------------------------------
20
+    | Default Cloud Filesystem Disk
21
+    |--------------------------------------------------------------------------
22
+    |
23
+    | Many applications store files both locally and in the cloud. For this
24
+    | reason, you may specify a default "cloud" driver here. This driver
25
+    | will be bound as the Cloud disk implementation in the container.
26
+    |
27
+    */
28
+
29
+    'cloud' => env('FILESYSTEM_CLOUD', 's3'),
30
+
31
+    /*
32
+    |--------------------------------------------------------------------------
33
+    | Filesystem Disks
34
+    |--------------------------------------------------------------------------
35
+    |
36
+    | Here you may configure as many filesystem "disks" as you wish, and you
37
+    | may even configure multiple disks of the same driver. Defaults have
38
+    | been setup for each driver as an example of the required options.
39
+    |
40
+    | Supported Drivers: "local", "ftp", "sftp", "s3", "rackspace"
41
+    |
42
+    */
43
+
44
+    'disks' => [
45
+
46
+        'local' => [
47
+            'driver' => 'local',
48
+            'root' => storage_path('app'),
49
+        ],
50
+
51
+        'public' => [
52
+            'driver' => 'local',
53
+            'root' => base_path('public/uploads'),
54
+            'url' => env('APP_URL').'/storage',
55
+            'visibility' => 'public',
56
+        ],
57
+
58
+        's3' => [
59
+            'driver' => 's3',
60
+            'key' => env('AWS_ACCESS_KEY_ID'),
61
+            'secret' => env('AWS_SECRET_ACCESS_KEY'),
62
+            'region' => env('AWS_DEFAULT_REGION'),
63
+            'bucket' => env('AWS_BUCKET'),
64
+            'url' => env('AWS_URL'),
65
+        ],
66
+
67
+    ],
68
+
69
+];

+ 20 - 0
config/hashing.php Zobrazit soubor

@@ -0,0 +1,20 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Default Hash Driver
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | This option controls the default hash driver that will be used to hash
11
+    | passwords for your application. By default, the bcrypt algorithm is
12
+    | used; however, you remain free to modify this option if you wish.
13
+    |
14
+    | Supported: "bcrypt", "argon"
15
+    |
16
+    */
17
+
18
+    'driver' => 'bcrypt',
19
+
20
+];

+ 70 - 0
config/logging.php Zobrazit soubor

@@ -0,0 +1,70 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Default Log Channel
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | This option defines the default log channel that gets used when writing
11
+    | messages to the logs. The name specified in this option should match
12
+    | one of the channels defined in the "channels" configuration array.
13
+    |
14
+    */
15
+
16
+    'default' => env('LOG_CHANNEL', 'stack'),
17
+
18
+    /*
19
+    |--------------------------------------------------------------------------
20
+    | Log Channels
21
+    |--------------------------------------------------------------------------
22
+    |
23
+    | Here you may configure the log channels for your application. Out of
24
+    | the box, Laravel uses the Monolog PHP logging library. This gives
25
+    | you a variety of powerful log handlers / formatters to utilize.
26
+    |
27
+    | Available Drivers: "single", "daily", "slack", "syslog",
28
+    |                    "errorlog", "custom", "stack"
29
+    |
30
+    */
31
+
32
+    'channels' => [
33
+        'stack' => [
34
+            'driver' => 'stack',
35
+            'channels' => ['single'],
36
+        ],
37
+
38
+        'single' => [
39
+            'driver' => 'single',
40
+            'path' => storage_path('logs/laravel.log'),
41
+            'level' => 'debug',
42
+        ],
43
+
44
+        'daily' => [
45
+            'driver' => 'daily',
46
+            'path' => storage_path('logs/laravel.log'),
47
+            'level' => 'debug',
48
+            'days' => 7,
49
+        ],
50
+
51
+        'slack' => [
52
+            'driver' => 'slack',
53
+            'url' => env('LOG_SLACK_WEBHOOK_URL'),
54
+            'username' => 'Laravel Log',
55
+            'emoji' => ':boom:',
56
+            'level' => 'critical',
57
+        ],
58
+
59
+        'syslog' => [
60
+            'driver' => 'syslog',
61
+            'level' => 'debug',
62
+        ],
63
+
64
+        'errorlog' => [
65
+            'driver' => 'errorlog',
66
+            'level' => 'debug',
67
+        ],
68
+    ],
69
+
70
+];

+ 128 - 0
config/mail.php Zobrazit soubor

@@ -0,0 +1,128 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Mail Driver
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | Laravel supports both SMTP and PHP's "mail" function as drivers for the
11
+    | sending of e-mail. You may specify which one you're using throughout
12
+    | your application here. By default, Laravel is setup for SMTP mail.
13
+    |
14
+    | Supported: "smtp", "sendmail", "mailgun", "mandrill", "ses",
15
+    |            "sparkpost", "log", "array"
16
+    |
17
+    */
18
+
19
+    'driver' => env('MAIL_DRIVER', 'smtp'),
20
+
21
+    /*
22
+    |--------------------------------------------------------------------------
23
+    | SMTP Host Address
24
+    |--------------------------------------------------------------------------
25
+    |
26
+    | Here you may provide the host address of the SMTP server used by your
27
+    | applications. A default option is provided that is compatible with
28
+    | the Mailgun mail service which will provide reliable deliveries.
29
+    |
30
+    */
31
+
32
+    'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
33
+
34
+    /*
35
+    |--------------------------------------------------------------------------
36
+    | SMTP Host Port
37
+    |--------------------------------------------------------------------------
38
+    |
39
+    | This is the SMTP port used by your application to deliver e-mails to
40
+    | users of the application. Like the host we have set this value to
41
+    | stay compatible with the Mailgun e-mail application by default.
42
+    |
43
+    */
44
+
45
+    'port' => env('MAIL_PORT', 587),
46
+
47
+    /*
48
+    |--------------------------------------------------------------------------
49
+    | Global "From" Address
50
+    |--------------------------------------------------------------------------
51
+    |
52
+    | You may wish for all e-mails sent by your application to be sent from
53
+    | the same address. Here, you may specify a name and address that is
54
+    | used globally for all e-mails that are sent by your application.
55
+    |
56
+    */
57
+
58
+    'from' => [
59
+        'address' => env('MAIL_FROM_ADDRESS', 'guanxiaolin@neigou.com'),
60
+        'name' => env('MAIL_FROM_NAME', '爱答题'),
61
+    ],
62
+
63
+    /*
64
+    |--------------------------------------------------------------------------
65
+    | E-Mail Encryption Protocol
66
+    |--------------------------------------------------------------------------
67
+    |
68
+    | Here you may specify the encryption protocol that should be used when
69
+    | the application send e-mail messages. A sensible default using the
70
+    | transport layer security protocol should provide great security.
71
+    |
72
+    */
73
+
74
+    'encryption' => env('MAIL_ENCRYPTION', 'tls'),
75
+
76
+    /*
77
+    |--------------------------------------------------------------------------
78
+    | SMTP Server Username
79
+    |--------------------------------------------------------------------------
80
+    |
81
+    | If your SMTP server requires a username for authentication, you should
82
+    | set it here. This will get used to authenticate with your server on
83
+    | connection. You may also set the "password" value below this one.
84
+    |
85
+    */
86
+
87
+    'username' => env('MAIL_USERNAME'),
88
+
89
+    'password' => env('MAIL_PASSWORD'),
90
+
91
+    /*
92
+    |--------------------------------------------------------------------------
93
+    | Sendmail System Path
94
+    |--------------------------------------------------------------------------
95
+    |
96
+    | When using the "sendmail" driver to send e-mails, we will need to know
97
+    | the path to where Sendmail lives on this server. A default path has
98
+    | been provided here, which will work well on most of your systems.
99
+    |
100
+    */
101
+
102
+    'sendmail' => '/usr/sbin/sendmail -bs',
103
+
104
+    /*
105
+    |--------------------------------------------------------------------------
106
+    | Markdown Mail Settings
107
+    |--------------------------------------------------------------------------
108
+    |
109
+    | If you are using Markdown based email rendering, you may configure your
110
+    | theme and component paths here, allowing you to customize the design
111
+    | of the emails. Or, you may simply stick with the Laravel defaults!
112
+    |
113
+    */
114
+
115
+    'markdown' => [
116
+        'theme' => 'default',
117
+
118
+        'paths' => [
119
+            resource_path('views/vendor/mail'),
120
+        ],
121
+    ],
122
+
123
+    'mail_receive'=>[
124
+        'liuxianghua@neigou.com'=>'刘小华',
125
+        'caolei@neigou.com'=>'曹小蕾',
126
+        'guanxiaolin@neigou.com'=>'官小林'
127
+    ],
128
+];

+ 66 - 0
config/pay.php Zobrazit soubor

@@ -0,0 +1,66 @@
1
+<?php
2
+
3
+return [
4
+    'alipay' => [
5
+        // 支付宝分配的 APPID
6
+        'app_id' => env('ALI_APP_ID', ''),
7
+
8
+        // 支付宝异步通知地址
9
+        'notify_url' => '',
10
+
11
+        // 支付成功后同步通知地址
12
+        'return_url' => '',
13
+
14
+        // 阿里公共密钥,验证签名时使用
15
+        'ali_public_key' => env('ALI_PUBLIC_KEY', ''),
16
+
17
+        // 自己的私钥,签名时使用
18
+        'private_key' => env('ALI_PRIVATE_KEY', ''),
19
+
20
+        // optional,默认 warning;日志路径为:sys_get_temp_dir().'/logs/yansongda.pay.log'
21
+        'log' => [
22
+            'file' => storage_path('logs/alipay.log'),
23
+        //     'level' => 'debug'
24
+        ],
25
+
26
+        // optional,设置此参数,将进入沙箱模式
27
+        //'mode' => 'dev',
28
+    ],
29
+
30
+    'wechat' => [
31
+        // 公众号 APPID
32
+        'app_id' => env('WECHAT_APP_ID', 'wxc0ccd65986b39439'),
33
+
34
+        // 小程序 APPID
35
+        'miniapp_id' => env('WECHAT_MINIAPP_ID', ''),
36
+
37
+        // APP 引用的 appid
38
+        'appid' => env('WECHAT_APPID', 'wxc0ccd65986b39439'),
39
+
40
+        // 微信支付分配的微信商户号
41
+        'mch_id' => env('WECHAT_MCH_ID', '1228558702'),
42
+
43
+        // 微信支付异步通知地址
44
+        'notify_url' => 'https://activity.51guanhuai.com/manage/pay/notify',
45
+
46
+        // 微信支付签名秘钥
47
+        'key' => env('WECHAT_KEY', 'n3Ullz4kcFgNefN89bHqpQi09NI7IgYJ'),
48
+
49
+        // 客户端证书路径,退款、红包等需要用到。请填写绝对路径,linux 请确保权限问题。pem 格式。
50
+        'cert_client' => storage_path('pay/apiclient_cert.pem'),
51
+
52
+        // 客户端秘钥路径,退款、红包等需要用到。请填写绝对路径,linux 请确保权限问题。pem 格式。
53
+        'cert_key' => storage_path('pay/apiclient_key.pem'),
54
+
55
+        // optional,默认 warning;日志路径为:sys_get_temp_dir().'/logs/yansongda.pay.log'
56
+        'log' => [
57
+            'file' => storage_path('logs/wechat.log'),
58
+        //     'level' => 'debug'
59
+        ],
60
+
61
+        // optional
62
+        // 'dev' 时为沙箱模式
63
+        // 'hk' 时为东南亚节点
64
+        //'mode' => 'dev',
65
+    ],
66
+];

+ 66 - 0
config/pay_cp.php Zobrazit soubor

@@ -0,0 +1,66 @@
1
+<?php
2
+
3
+return [
4
+    'alipay' => [
5
+        // 支付宝分配的 APPID
6
+        'app_id' => env('ALI_APP_ID', ''),
7
+
8
+        // 支付宝异步通知地址
9
+        'notify_url' => '',
10
+
11
+        // 支付成功后同步通知地址
12
+        'return_url' => '',
13
+
14
+        // 阿里公共密钥,验证签名时使用
15
+        'ali_public_key' => env('ALI_PUBLIC_KEY', ''),
16
+
17
+        // 自己的私钥,签名时使用
18
+        'private_key' => env('ALI_PRIVATE_KEY', ''),
19
+
20
+        // optional,默认 warning;日志路径为:sys_get_temp_dir().'/logs/yansongda.pay.log'
21
+        'log' => [
22
+            'file' => storage_path('logs/alipay.log'),
23
+        //     'level' => 'debug'
24
+        ],
25
+
26
+        // optional,设置此参数,将进入沙箱模式
27
+        //'mode' => 'dev',
28
+    ],
29
+
30
+    'wechat' => [
31
+        // 公众号 APPID
32
+        'app_id' => env('WECHAT_APP_ID', 'wxc0ccd65986b39439'),
33
+
34
+        // 小程序 APPID
35
+        'miniapp_id' => env('WECHAT_MINIAPP_ID', ''),
36
+
37
+        // APP 引用的 appid
38
+        'appid' => env('WECHAT_APPID', 'wxc0ccd65986b39439'),
39
+
40
+        // 微信支付分配的微信商户号
41
+        'mch_id' => env('WECHAT_MCH_ID', '1228558702'),
42
+
43
+        // 微信支付异步通知地址
44
+        'notify_url' => 'https://activity.51guanhuai.com/manage/pay/notify',
45
+
46
+        // 微信支付签名秘钥
47
+        'key' => env('WECHAT_KEY', 'n3Ullz4kcFgNefN89bHqpQi09NI7IgYJ'),
48
+
49
+        // 客户端证书路径,退款、红包等需要用到。请填写绝对路径,linux 请确保权限问题。pem 格式。
50
+        'cert_client' => storage_path('pay/apiclient_cert.pem'),
51
+
52
+        // 客户端秘钥路径,退款、红包等需要用到。请填写绝对路径,linux 请确保权限问题。pem 格式。
53
+        'cert_key' => storage_path('pay/apiclient_key.pem'),
54
+
55
+        // optional,默认 warning;日志路径为:sys_get_temp_dir().'/logs/yansongda.pay.log'
56
+        'log' => [
57
+            'file' => storage_path('logs/wechat.log'),
58
+            'level' => 'debug'
59
+        ],
60
+
61
+        // optional
62
+        // 'dev' 时为沙箱模式
63
+        // 'hk' 时为东南亚节点
64
+        //'mode' => 'dev',
65
+    ],
66
+];

+ 86 - 0
config/queue.php Zobrazit soubor

@@ -0,0 +1,86 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Default Queue Connection Name
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | Laravel's queue API supports an assortment of back-ends via a single
11
+    | API, giving you convenient access to each back-end using the same
12
+    | syntax for every one. Here you may define a default connection.
13
+    |
14
+    */
15
+
16
+    'default' => env('QUEUE_DRIVER', 'sync'),
17
+
18
+    /*
19
+    |--------------------------------------------------------------------------
20
+    | Queue Connections
21
+    |--------------------------------------------------------------------------
22
+    |
23
+    | Here you may configure the connection information for each server that
24
+    | is used by your application. A default configuration has been added
25
+    | for each back-end shipped with Laravel. You are free to add more.
26
+    |
27
+    | Drivers: "sync", "database", "beanstalkd", "sqs", "redis", "null"
28
+    |
29
+    */
30
+
31
+    'connections' => [
32
+
33
+        'sync' => [
34
+            'driver' => 'sync',
35
+        ],
36
+
37
+        'database' => [
38
+            'driver' => 'database',
39
+            'table' => 'jobs',
40
+            'queue' => 'default',
41
+            'retry_after' => 90,
42
+        ],
43
+
44
+        'beanstalkd' => [
45
+            'driver' => 'beanstalkd',
46
+            'host' => 'localhost',
47
+            'queue' => 'default',
48
+            'retry_after' => 90,
49
+        ],
50
+
51
+        'sqs' => [
52
+            'driver' => 'sqs',
53
+            'key' => env('SQS_KEY', 'your-public-key'),
54
+            'secret' => env('SQS_SECRET', 'your-secret-key'),
55
+            'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'),
56
+            'queue' => env('SQS_QUEUE', 'your-queue-name'),
57
+            'region' => env('SQS_REGION', 'us-east-1'),
58
+        ],
59
+
60
+        'redis' => [
61
+            'driver' => 'redis',
62
+            'connection' => 'default',
63
+            'queue' => 'default',
64
+            'retry_after' => 90,
65
+            'block_for' => null,
66
+        ],
67
+
68
+    ],
69
+
70
+    /*
71
+    |--------------------------------------------------------------------------
72
+    | Failed Queue Jobs
73
+    |--------------------------------------------------------------------------
74
+    |
75
+    | These options configure the behavior of failed queue job logging so you
76
+    | can control which database and table are used to store the jobs that
77
+    | have failed. You may change them to any database / table you wish.
78
+    |
79
+    */
80
+
81
+    'failed' => [
82
+        'database' => env('DB_CONNECTION', 'mysql'),
83
+        'table' => 'failed_jobs',
84
+    ],
85
+
86
+];

+ 38 - 0
config/services.php Zobrazit soubor

@@ -0,0 +1,38 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Third Party Services
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | This file is for storing the credentials for third party services such
11
+    | as Stripe, Mailgun, SparkPost and others. This file provides a sane
12
+    | default location for this type of information, allowing packages
13
+    | to have a conventional place to find your various credentials.
14
+    |
15
+    */
16
+
17
+    'mailgun' => [
18
+        'domain' => env('MAILGUN_DOMAIN'),
19
+        'secret' => env('MAILGUN_SECRET'),
20
+    ],
21
+
22
+    'ses' => [
23
+        'key' => env('SES_KEY'),
24
+        'secret' => env('SES_SECRET'),
25
+        'region' => 'us-east-1',
26
+    ],
27
+
28
+    'sparkpost' => [
29
+        'secret' => env('SPARKPOST_SECRET'),
30
+    ],
31
+
32
+    'stripe' => [
33
+        'model' => App\User::class,
34
+        'key' => env('STRIPE_KEY'),
35
+        'secret' => env('STRIPE_SECRET'),
36
+    ],
37
+
38
+];

+ 197 - 0
config/session.php Zobrazit soubor

@@ -0,0 +1,197 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | Default Session Driver
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | This option controls the default session "driver" that will be used on
11
+    | requests. By default, we will use the lightweight native driver but
12
+    | you may specify any of the other wonderful drivers provided here.
13
+    |
14
+    | Supported: "file", "cookie", "database", "apc",
15
+    |            "memcached", "redis", "array"
16
+    |
17
+    */
18
+
19
+    'driver' => env('SESSION_DRIVER', 'file'),
20
+
21
+    /*
22
+    |--------------------------------------------------------------------------
23
+    | Session Lifetime
24
+    |--------------------------------------------------------------------------
25
+    |
26
+    | Here you may specify the number of minutes that you wish the session
27
+    | to be allowed to remain idle before it expires. If you want them
28
+    | to immediately expire on the browser closing, set that option.
29
+    |
30
+    */
31
+
32
+    'lifetime' => env('SESSION_LIFETIME', 120),
33
+
34
+    'expire_on_close' => false,
35
+
36
+    /*
37
+    |--------------------------------------------------------------------------
38
+    | Session Encryption
39
+    |--------------------------------------------------------------------------
40
+    |
41
+    | This option allows you to easily specify that all of your session data
42
+    | should be encrypted before it is stored. All encryption will be run
43
+    | automatically by Laravel and you can use the Session like normal.
44
+    |
45
+    */
46
+
47
+    'encrypt' => false,
48
+
49
+    /*
50
+    |--------------------------------------------------------------------------
51
+    | Session File Location
52
+    |--------------------------------------------------------------------------
53
+    |
54
+    | When using the native session driver, we need a location where session
55
+    | files may be stored. A default has been set for you but a different
56
+    | location may be specified. This is only needed for file sessions.
57
+    |
58
+    */
59
+
60
+    'files' => storage_path('framework/sessions'),
61
+
62
+    /*
63
+    |--------------------------------------------------------------------------
64
+    | Session Database Connection
65
+    |--------------------------------------------------------------------------
66
+    |
67
+    | When using the "database" or "redis" session drivers, you may specify a
68
+    | connection that should be used to manage these sessions. This should
69
+    | correspond to a connection in your database configuration options.
70
+    |
71
+    */
72
+
73
+    'connection' => null,
74
+
75
+    /*
76
+    |--------------------------------------------------------------------------
77
+    | Session Database Table
78
+    |--------------------------------------------------------------------------
79
+    |
80
+    | When using the "database" session driver, you may specify the table we
81
+    | should use to manage the sessions. Of course, a sensible default is
82
+    | provided for you; however, you are free to change this as needed.
83
+    |
84
+    */
85
+
86
+    'table' => 'sessions',
87
+
88
+    /*
89
+    |--------------------------------------------------------------------------
90
+    | Session Cache Store
91
+    |--------------------------------------------------------------------------
92
+    |
93
+    | When using the "apc" or "memcached" session drivers, you may specify a
94
+    | cache store that should be used for these sessions. This value must
95
+    | correspond with one of the application's configured cache stores.
96
+    |
97
+    */
98
+
99
+    'store' => null,
100
+
101
+    /*
102
+    |--------------------------------------------------------------------------
103
+    | Session Sweeping Lottery
104
+    |--------------------------------------------------------------------------
105
+    |
106
+    | Some session drivers must manually sweep their storage location to get
107
+    | rid of old sessions from storage. Here are the chances that it will
108
+    | happen on a given request. By default, the odds are 2 out of 100.
109
+    |
110
+    */
111
+
112
+    'lottery' => [2, 100],
113
+
114
+    /*
115
+    |--------------------------------------------------------------------------
116
+    | Session Cookie Name
117
+    |--------------------------------------------------------------------------
118
+    |
119
+    | Here you may change the name of the cookie used to identify a session
120
+    | instance by ID. The name specified here will get used every time a
121
+    | new session cookie is created by the framework for every driver.
122
+    |
123
+    */
124
+
125
+    'cookie' => env(
126
+        'SESSION_COOKIE',
127
+        str_slug(env('APP_NAME', 'laravel'), '_').'_session'
128
+    ),
129
+
130
+    /*
131
+    |--------------------------------------------------------------------------
132
+    | Session Cookie Path
133
+    |--------------------------------------------------------------------------
134
+    |
135
+    | The session cookie path determines the path for which the cookie will
136
+    | be regarded as available. Typically, this will be the root path of
137
+    | your application but you are free to change this when necessary.
138
+    |
139
+    */
140
+
141
+    'path' => '/',
142
+
143
+    /*
144
+    |--------------------------------------------------------------------------
145
+    | Session Cookie Domain
146
+    |--------------------------------------------------------------------------
147
+    |
148
+    | Here you may change the domain of the cookie used to identify a session
149
+    | in your application. This will determine which domains the cookie is
150
+    | available to in your application. A sensible default has been set.
151
+    |
152
+    */
153
+
154
+    'domain' => env('SESSION_DOMAIN', null),
155
+
156
+    /*
157
+    |--------------------------------------------------------------------------
158
+    | HTTPS Only Cookies
159
+    |--------------------------------------------------------------------------
160
+    |
161
+    | By setting this option to true, session cookies will only be sent back
162
+    | to the server if the browser has a HTTPS connection. This will keep
163
+    | the cookie from being sent to you if it can not be done securely.
164
+    |
165
+    */
166
+
167
+    'secure' => env('SESSION_SECURE_COOKIE', false),
168
+
169
+    /*
170
+    |--------------------------------------------------------------------------
171
+    | HTTP Access Only
172
+    |--------------------------------------------------------------------------
173
+    |
174
+    | Setting this value to true will prevent JavaScript from accessing the
175
+    | value of the cookie and the cookie will only be accessible through
176
+    | the HTTP protocol. You are free to modify this option if needed.
177
+    |
178
+    */
179
+
180
+    'http_only' => true,
181
+
182
+    /*
183
+    |--------------------------------------------------------------------------
184
+    | Same-Site Cookies
185
+    |--------------------------------------------------------------------------
186
+    |
187
+    | This option determines how your cookies behave when cross-site requests
188
+    | take place, and can be used to mitigate CSRF attacks. By default, we
189
+    | do not enable this as other CSRF protection services are in place.
190
+    |
191
+    | Supported: "lax", "strict"
192
+    |
193
+    */
194
+
195
+    'same_site' => null,
196
+
197
+];

+ 33 - 0
config/view.php Zobrazit soubor

@@ -0,0 +1,33 @@
1
+<?php
2
+
3
+return [
4
+
5
+    /*
6
+    |--------------------------------------------------------------------------
7
+    | View Storage Paths
8
+    |--------------------------------------------------------------------------
9
+    |
10
+    | Most templating systems load templates from disk. Here you may specify
11
+    | an array of paths that should be checked for your views. Of course
12
+    | the usual Laravel view path has already been registered for you.
13
+    |
14
+    */
15
+
16
+    'paths' => [
17
+        resource_path('views'),
18
+    ],
19
+
20
+    /*
21
+    |--------------------------------------------------------------------------
22
+    | Compiled View Path
23
+    |--------------------------------------------------------------------------
24
+    |
25
+    | This option determines where all the compiled Blade templates will be
26
+    | stored for your application. Typically, this is within the storage
27
+    | directory. However, as usual, you are free to change this value.
28
+    |
29
+    */
30
+
31
+    'compiled' => realpath(storage_path('framework/views')),
32
+
33
+];