app = new Application('test'); } /** * @Given /^I am not authenticated$/ */ public function iAmNotAuthenticated() { $this->app['session']->clear(); $this->app['authentication']->reinitUser(); } /** * @Given /^locale is "([^"]*)"$/ */ public function localeIs($localeI18n) { $this->getSession()->setCookie('locale', $localeI18n); } /** * @When /^I click "([^"]*)"$/ */ public function iClick($css) { $page = $this->getSession()->getPage(); $el = $page->find('css', $css); $el->click(); } /** * @Given /^a user "([^"]*)" does not exist$/ */ public function aUserDoesNotExist($login) { if (false !== $userId = \User_Adapter::get_usr_id_from_login($this->app, $login)) { $user = \User_Adapter::getInstance($userId, $this->app); $user->ACL()->revoke_access_from_bases(array_keys( $this->app['authentication']->getUser()->ACL()->get_granted_base(array('canadmin')) )); $user->delete(); } } /** * @Given /^a user "([^"]*)" exists with "([^"]*)" as password$/ */ public function aUserExistsWithAsPassword($login, $password) { if (false === \User_Adapter::get_usr_id_from_login($this->app, $login)) { \User_Adapter::create( $this->app, $login, $password, $login, false ); } } /** * @Given /^a user "([^"]*)" exists$/ */ public function aUserExists($login) { $this->aUserExistsWithAsPassword($login, uniqid()); } /** * @Given /^captcha system is enable$/ */ public function captchaSystemIsEnable() { $this->app['phraseanet.registry']->set('GV_captchas', true, \registry::TYPE_BOOLEAN); } /** * @Given /^captcha system is disable/ */ public function captchaSystemIsDisable() { $this->app['phraseanet.registry']->set('GV_captchas', false, \registry::TYPE_BOOLEAN); } /** * @Given /^user registration is enable$/ */ public function userRegistrationIsEnable() { $databox = current($this->app['phraseanet.appbox']->get_databoxes()); $xml = $databox->get_sxml_structure(); if (!$xml) { throw new \Exception('Invalid databox xml structure'); } if (!isset($xml->caninscript)) { $xml->addChild('caninscript', '1'); $dom = new \DOMDocument(); $dom->loadXML($xml->asXML()); $databox->saveStructure($dom); } } /** * @Given /^user registration is disable/ */ public function userRegistrationIsDisable() { $databox = current($this->app['phraseanet.appbox']->get_databoxes()); $xml = $databox->get_sxml_structure(); if (!$xml) { throw new \Exception('Invalid databox xml structure'); } if (isset($xml->caninscript)) { unset($xml->caninscript); $dom = new \DOMDocument(); $dom->loadXML($xml->asXML()); $databox->saveStructure($dom); } } }