/** * Validation du formulaire de configuration des connections * * @return CopixActionReturn */ public function processValidForm() { $arConnections = array(); $arKeyConnections = array_keys($this->_getConnections()); $arKeyConnections[] = ""; foreach ($arKeyConnections as $key => $i) { try { CopixRequest::assert('driver' . $i, 'connectionString' . $i, 'user' . $i); $connectionName = str_replace(' ', '_', CopixRequest::getAlphaNum('connectionName' . $i)); if ($connectionName == "") { $connectionName = $key; } if (in_array(_request('driver' . $i), CopixDB::getAvailableDrivers())) { $connectionString = _request('connectionString' . $i); if (_request('driver' . $i) == 'pdo_mysql' || _request('driver' . $i) == 'mysql') { if (strpos($connectionString, 'dbname=') !== 0) { $connectionString = 'dbname=' . $connectionString; } } $arConnections[$connectionName] = array('driver' => _request('driver' . $i), 'connectionString' => $connectionString, 'user' => _request('user' . $i), 'password' => _request('password' . $i), 'extra' => array(), 'default' => _request('defaultRadio') == 'default' . $i); } } catch (Exception $e) { // var_dump($e); break; } } CopixSession::set('admin|database|configure', $arConnections); $default_db = CopixRequest::get('defaultRadio') == 'nodefault' ? 'nodefault' : substr(CopixRequest::get('defaultRadio'), 7); CopixSession::set('admin|database|default', $default_db); $result = $this->_testConnections(); if (CopixRequest::get('btn') == _i18n('install.database.save') && ($result && count(CopixSession::get('admin|database|configure')) >= 1)) { if (_ioClass('DatabaseConfigurationFile')->write(CopixSession::get('admin|database|configure'), CopixRequest::get('defaultRadio'))) { CopixSession::set('admin|database|configure', null); CopixSession::set('admin|database|default', null); if (CopixRequest::get('defaultRadio') == 'nodefault') { _class('admin|admintemp')->clearTemp(); return _arRedirect(_url('admin||')); } else { return _arRedirect($this->_checkInstallFramework($default_db)); } } } if (count(CopixSession::get('admin|database|configure')) == 1) { return _arRedirect(_url('admin|database|ConfigurationForm', array('valid' => $result && count(CopixSession::get('admin|database|configure')) >= 1, 'forcedefault' => true))); } else { return _arRedirect(_url('admin|database|ConfigurationForm', array('valid' => $result && count(CopixSession::get('admin|database|configure')) >= 1))); } }
public function testAlphaNum() { $this->assertEquals('valeur 3', CopixRequest::getAlphaNum('element2')); }