Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 6749 | Rev 6866 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 www 1
<?php
2
 
3
/**
4
 * Global Configuration Override
5
 *
6
 * You can use this file for overriding configuration values from modules, etc.
7
 * You would place values in here that are agnostic to the environment and not
8
 * sensitive to security.
9
 *
10
 * NOTE: In practice, this file will typically be INCLUDED in your source
11
 * control, so do not include passwords or other sensitive information in this
12
 * file.
13
 */
14
use Laminas\Session\Storage\SessionArrayStorage;
15
use Laminas\Session\Validator\RemoteAddr;
16
use Laminas\Session\Validator\HttpUserAgent;
17
use LeadersLinked\Handler\SessionHandler;
112 efrain 18
use Laminas\Session\Storage\SessionStorage;
1 www 19
 
3086 efrain 20
 
6804 efrain 21
 
1 www 22
return [
6749 efrain 23
    'session' => [
1 www 24
        'config' => [
25
            'class' => 'Laminas\Session\Config\SessionConfig',
26
            'options' => [
3639 efrain 27
                'name'              => 'LeadersLinked',
169 efrain 28
                'use_cookies'       => true,
3639 efrain 29
                'cookie_lifetime'   => 60*60*24*30,
30
                'gc_maxlifetime'    => 60*60*24,
1 www 31
            ],
32
        ],
33
        'storage' => SessionArrayStorage::class,
34
        'validators' => [
35
            RemoteAddr::class,
36
            HttpUserAgent::class,
37
        ],
38
    ],
6749 efrain 39
    /*
1 www 40
    'caches' => [
41
        'leaders-linked-cache' => [
6749 efrain 42
 
3639 efrain 43
            'adapter' => [
1 www 44
                'name'     =>'memcached',
45
                'options' => [
6749 efrain 46
                    'ttl' => 7200,
1 www 47
                    'servers' => [
48
                        [
49
                            'host' => '127.0.0.1',
50
                            'port' =>11211
51
                        ]
52
                    ],
53
                    'namespace'  => 'LL',
54
                    'liboptions' => [
55
                        'COMPRESSION' => true,
56
                        'binary_protocol' => true,
57
                        'no_block' => true,
58
                        'connect_timeout' => 100
59
                    ]
60
                ],
61
 
3639 efrain 62
            ],
1 www 63
            'plugins' => [
64
                'exception_handler' => [
65
                    'throw_exceptions' => false
66
                ],
67
            ],
68
        ]
69
    ],
6749 efrain 70
    */
71
    /* 'db' => [
72
     'adapters' => [
73
     'leaders-linked-db' => [
74
     'driver'                => 'Pdo',
75
     'dsn'                   => 'mysql:dbname=leaderslinked;host=localhost',
76
     'username'                      => 'test',
77
     'password'                      => 'T3st001-',
78
     'driver_options'        => array(
79
     PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
80
     ),
81
     ],
82
 
83
     ]
84
     ],*/
1 www 85
    'service_manager' => [
86
        'factories' => [
87
            //'Laminas\Db\Adapter\Adapter'  => 'Laminas\Db\Adapter\AdapterServiceFactory',
88
 
89
            'leaders-linked-db' => function ($sm) {
6749 efrain 90
            $config = $sm->get('config');
1 www 91
 
6749 efrain 92
            $sandbox = $config['leaderslinked.runmode.sandbox'];
93
            if($sandbox) {
94
                $host       = $config['leaderslinked.database.sandbox_host'];
95
                $port       = $config['leaderslinked.database.sandbox_port'];
96
                $dbname     = $config['leaderslinked.database.sandbox_dbname'];
97
                $user       = $config['leaderslinked.database.sandbox_user'];
98
                $password   = $config['leaderslinked.database.sandbox_password'];
99
            } else {
100
                $host       = $config['leaderslinked.database.production_host'];
101
                $port       = $config['leaderslinked.database.production_port'];
102
                $dbname     = $config['leaderslinked.database.production_dbname'];
103
                $user       = $config['leaderslinked.database.production_user'];
104
                $password   = $config['leaderslinked.database.production_password'];
105
            }
106
 
107
 
108
            $adapter = new \Laminas\Db\Adapter\Adapter([
109
                'driver'            => 'Pdo',
110
                'dsn'               => 'mysql:dbname=' . $dbname . ';host=' . $host . ';port=' . $port,
111
                'username'                  => $user,
112
                'password'                  => $password,
113
                'driver_options'    => [
114
                    PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
115
                ],
116
            ]);
117
 
118
            return $adapter;
119
 
1 www 120
            },
121
            'leaders-linked-log' => function($sm) {
6749 efrain 122
            $formatter = new \Laminas\Log\Formatter\Base();
123
            $formatter->setDateTimeFormat('Y-m-d H:i:s');
124
 
125
            $mapping = array(
126
                'timestamp'     => 'added_on',
127
                'priority'      => 'priority_level',
128
                'priorityName'  => 'priority_name',
129
                'message'       => 'message',
130
                'extra'       => [
131
                    'user_id'    => 'user_id',
132
                    'ip' => 'ip'
133
                ]
134
            );
135
 
136
 
137
 
138
            /*
139
             $writer = new Laminas\Log\Writer\Stream('logs/leaderslinked.log');
140
             $logger = new Laminas\Log\Logger();
141
             $logger->addWriter($writer);
142
             */
143
 
144
            $adapter = $sm->get('leaders-linked-db');
145
 
146
            $writer = new \Laminas\Log\Writer\Db($adapter, 'tbl_logs', $mapping);
147
            $writer->setFormatter($formatter);
148
 
149
            $logger = new \Laminas\Log\Logger();
150
            $logger->addWriter($writer);
151
 
152
 
153
 
154
            return $logger;
1 www 155
            },
156
            /*'leaders-linked-session' => function ($sm) {
6749 efrain 157
             $adapter    = $sm->get('leaders-linked-db');
158
             //$logger     = $sm->get('leaders-linked-log');
1 www 159
 
6749 efrain 160
             $config = $sm->get('config');
161
             if (! isset($config['session'])) {
162
             $sessionManager = new SessionManager();
163
             Container::setDefaultManager($sessionManager);
164
             return $sessionManager;
165
             }
166
 
167
             $session = $config['session'];
168
 
169
             $sessionConfig = null;
170
             if (isset($session['config'])) {
171
             $class = isset($session['config']['class'])
172
             ?  $session['config']['class']
173
             : SessionConfig::class;
174
 
175
             $options = isset($session['config']['options'])
176
             ?  $session['config']['options']
177
             : [];
178
 
179
             $options['remember_me_seconds'] = 31536000;  // 365 * 24 * 60 * 60
180
             // $options['use_cookies'] = false;
181
 
182
             $sessionConfig = new $class();
183
             $sessionConfig->setOptions($options);
184
             }
185
 
186
 
187
             $sessionStorage = null;
188
             if (isset($session['storage'])) {
189
             $class = $session['storage'];
190
             $sessionStorage = new $class();
191
             }
192
 
193
             $sessionSaveHandler = null;
194
             if (isset($session['save_handler'])) {
195
             // class should be fetched from service manager
196
             // since it will require constructor arguments
197
             $sessionSaveHandler = $sm->get($session['save_handler']);
198
             }
199
 
200
             $tableGateway = new TableGateway(SessionMapper::_TABLE, $adapter);
201
             $sessionSaveHandler  = new DbTableGateway($tableGateway, new DbTableGatewayOptions());
202
 
203
             $sessionManager = new SessionManager(
204
             $sessionConfig,
205
             $sessionStorage,
206
             $sessionSaveHandler
207
             );
208
 
209
             Container::setDefaultManager($sessionManager);
210
             return $sessionManager;
211
             },*/
212
 
213
            'leaders-linked-session' => function ($sm) {
214
            $config = $sm->get('config');
215
            if (isset($config['session'])) {
1 www 216
 
217
                $session = $config['session'];
218
 
6749 efrain 219
 
1 www 220
                $sessionConfig = null;
221
                if (isset($session['config'])) {
6749 efrain 222
                    $class = isset($session['config']['class'])  ? $session['config']['class'] : 'Laminas\Session\Config\SessionConfig';
223
                    $options = isset($session['config']['options']) ? $session['config']['options'] : [];
1 www 224
 
225
 
6749 efrain 226
                    $options['remember_me_seconds'] = 7200;  // 60 * 60 * 2seconds
227
                    $options['use_cookies'] = true;
1 www 228
                    $sessionConfig = new $class();
229
                    $sessionConfig->setOptions($options);
230
                }
231
 
6749 efrain 232
                $sessionStorage = new SessionStorage();
1 www 233
                if (isset($session['storage'])) {
234
                    $class = $session['storage'];
235
                    $sessionStorage = new $class();
236
                }
237
 
238
 
6749 efrain 239
                $sessionManager = new \Laminas\Session\SessionManager();
240
                $sessionManager->setConfig($sessionConfig);
241
                $sessionManager->setStorage($sessionStorage);
242
 
1 www 243
 
6749 efrain 244
                $adapter    = $sm->get('leaders-linked-db');
245
                $logger     = $sm->get('leaders-linked-log');
246
                $saveHandler= new SessionHandler($adapter, $logger, $sessionConfig->getCookieLifetime());
1 www 247
 
6749 efrain 248
                $sessionManager->setSaveHandler($saveHandler);
249
 
250
                /*
251
                 $cache = $sm->get('leaders-linked-cache');
252
                 $saveHandler = new Cache($cache);
253
                 $sessionManager->setSaveHandler($saveHandler);
254
                 */
255
 
256
 
257
            } else {
258
                $sessionManager = new \Laminas\Session\SessionManager();
259
            }
260
 
261
            \Laminas\Session\Container::setDefaultManager($sessionManager);
262
            return $sessionManager;
1 www 263
            },
6749 efrain 264
            ],
265
            'abstract_factories' => [
266
 
267
            ]
268
            ],
269
 
270
 
271
            ];