Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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